作用:
基于传入的所期望的客户端矩形大小参数,计算所请求的窗口矩形大小。该窗口矩形随后可能会传入CreateWindow函数以创建一个窗口,该窗口区域大小即为所期望的大小。
若要指定一个扩展窗口的风格,可使用函数AdjustWindowRectEx
语法:
BOOL WINAPI AdjustWindowRect(
_Inout_ LPRECT lpRect,
_In_ DWORD dwStyle,
_In_ BOOL bMenu
);
lpRect[输入,输出]
类型LPRECT:
typedef struct _RECT {
LONG left;
LONG top;
LONG right;
LONG bottom;
} RECT, *PRECT;
_RECT结构体的指针形式,它包含了所期望客户端区域的左上以及右下角的坐标系。当函数返回时,该结构体包含了该窗口要容纳的客户端区域的坐上以及右下角区域。
dwStyle[输入]:
类型DWORD:
需要计算大小的窗口风格。
WS_OVERLAPPEDWINDOW:
(WS_OVERLAPPED | WS_CAPTION | WS_SYSMENU | WS_THICKFRAME | WS_MINIMIZEBOX | WS_MAXIMIZEBOX)
WS_OVERLAPPED : 交叠窗口,它有一个标题栏以及一个边框,与WS_TILED风格一样。
WS_CAPTION :该窗口有一个标题栏(包含WS_BORDER 风格)
WS_SYSMENU:该窗口在它的标题栏上有一个窗口菜单,而且WS_CAPTION 必须被同时指定。
WS_THICKFRAME:该窗口有一个有大小尺寸的边框,与WS_SIZEBOX风格一样。
WS_MINIMIZEBOX:该窗口有一个最小化按钮,不可与WS_EX_CONTEXTHELP风格一起使用。同时WS_SYSMENU风格必须被指定。
WS_MINIMIZEBOX:该窗口有一个最大化汉牛,不可与WS_EX_CONTEXTHELP风格一起使用。同时WS_SYSMENU风格必须被指定。
bMenu [输入]
类型BOOL
表示该窗口是否有菜单
返回值:
类型
类型:BOOL
若函数执行成功,返回非0;反之,返回0。想要获得额外错误信息,调用GetLastError函数。
备注:
一个客户矩形是完整封装一个客户端区域的最小单元。一个窗口矩形是完整封装一个窗口的最小单元,它包含了客户端区域以及非客户端区域。
当菜单栏封装两个以上的行时,AdjustWindowRect函数不会因此额外添加空间。
函数AdjustWindowRect不会使用WS_VSCROLL或WS_HSCROLL风格。当需要使用滚动栏时,调用带有参数SM_CXVSCROLL或SM_CYHSCROLL的函数GetSystemMetrics。
要求:
最小支持客户端 | Win2000 专业版[只限于桌面应用程序] |
最小支持服务器端 | Win2000 服务器版[只限于桌面应用程序] |
头文件 | Winuser.h(包含Windows.h) |
静态库文件 | User32.lib |
动态库文件 | User32.dll |