使用以下代码创建窗口时:
CreateWindowEx(0, "WinClass", "My Title", WS_OVERLAPPED | WS_SYSMENU, 261, 172, 594, 384, NULL, NULL, hInstance, NULL);
我在Windows XP和Windows 7下获得了不同的窗口大小:
但是,当我添加WS_THICKFRAME
样式时,问题就解决了:
CreateWindowEx(0, "WinClass", "My Title", WS_OVERLAPPED | WS_SYSMENU | WS_THICKFRAME, 261, 172, 594, 384, NULL, NULL, hInstance, NULL);
但不幸的是WS_THICKFRAME
使得窗口可调整大小,我不想要。
修改
我希望它在不同版本的Windows中保持相同的大小是客户区。
答案 0 :(得分:1)
我认为您正在寻找AdjustWindowRect function:
根据需要计算窗口矩形所需的大小 所需的客户矩形大小。然后可以传递窗口矩形 到CreateWindow函数创建一个客户区为的窗口 所需的大小。