CreateWindow(TEXT(""), TEXT(""), WS_OVERLAPPEDWINDOW,
CW_USEDEFAULT, 0, CW_USEDEFAULT, 0, NULL, NULL, hInstance, NULL);
上面是创建一个窗口,位置和大小都有系统随意指定。
一般来说,如果写一个win32窗口,想指定其大小,往往第一感觉应该是客户区大小才对,因为鼠标等消息返回的坐标是客户区坐上叫为原点的。但事实却是:创建的窗口大小是包括标题栏等表框的,这让很多想要有指定客户区大小的初学者苦恼了(^_^包括我)。
下面介绍一种比较方便的方法来创建一个指定客户区大小的窗口:
RECT rect;
rect.right = w;
rect.bottom = h;
rect.left = 0;
rect.top = 0;
AdjustWindowRect(&rect, WS_OVERLAPPEDWINDOW, false);
CreateWindow(TEXT(""), TEXT(""), WS_OVERLAPPEDWINDOW,
CW_USEDEFAULT, 0, rect.right - rect.left, rect.bottom - rect.top,
NULL, NULL, hInstance, NULL);
继续阅读 »
近期评论