在 MFC 中创建 window 时如何获得最大可能的 window 大小?

How to get maximum possible window size when creating window in MFC?

我需要获得正在创建的 window 的最大可能高度和宽度(window 首先没有最大化)。怎么做?

您可以获得屏幕高度和宽度,并传递该值以获得最大可能尺寸 window。
试试这个:

int X = GetSystemMetrics( SM_CXSCREEN );
int Y = GetSystemMetrics( SM_CYSCREEN );

X这里你会得到屏幕的宽度。
Y 中,您将获得屏幕的高度。

您可以将 GetSystemMetricsSM_CXSCREENSM_CYSCREEN 一起使用。这是您的主显示器的宽度和高度。

另一种方法是确定桌面工作区大小:

CRect rectWorkArea;
SystemParametersInfo(SPI_GETWORKAREA,0,&rectWorkArea,0);

或者如果您的 window 存在

,则可以确定特定显示器的工作区大小
CRect rectWorkArea;
MONITORINFO mi;
mi.cbSize = sizeof(mi);
::GetMonitorInfo(::MonitorFromWindow(hWnd, MONITOR_DEFAULTTONEAREST), &mi);
rectWorkArea = mi.rcWork;

MONITORINFO 还包含显示器尺寸。

取决于您需要做什么。