AdjustWindowRect与AdjustWindowRectEx
AdjustWindowRect 根据所需的矩形大小,计算所需的矩形的大小;然后,窗口矩形可以传递给CreateWindow函数创建一个窗口.
AdjustWindowRectEx 是AdjustWindowRect的扩展方法.增加了扩展窗口样式参数.
System.Windows.Forms.Form.ClientSize 获取或设置窗体工作区的大小.
/// <summary> /// 依据所需客户矩形的大小,计算需要的窗口矩形的大小 /// </summary> /// <param name="lpRect">指向RECT结构的指针,该结构包含所需客户区域的左上角和右下角的坐标。函数返回时,该结构容纳所需客户区域的窗口的左上角和右下角的坐标</param> /// <param name="dwStyle">指定将被计算尺寸的窗口的窗口风格</param> /// <param name="bMenu">指示窗口是否有菜单</param> /// <returns>如果函数成功,返回值为非零;如果函数失败,返回值为零</returns> [DllImport("user32")] public static extern int AdjustWindowRect(ref RECT lpRect, int dwStyle, int bMenu);
[DllImport("user32")] public static extern int AdjustWindowRectEx(ref RECT lpRect, int dsStyle, int bMenu, int dwEsStyle);
RECT结构定义了一个矩形的左上角和右下角坐标
typedef struct _RECT { LONG left; LONG top; LONG right; LONG bottom; } RECT, *PRECT;
相关参考:
RECT:https://msdn.microsoft.com/en-us/library/windows/desktop/dd162897(v=vs.85).aspx
AdjustWindowRect:https://msdn.microsoft.com/en-us/library/windows/desktop/ms632665(v=vs.85).aspx
Windows Style:https://msdn.microsoft.com/en-us/library/windows/desktop/ms632600(v=vs.85).aspx
Extended Window Styles:https://msdn.microsoft.com/en-us/library/windows/desktop/ff700543(v=vs.85).aspx
AdjustWindowRectEx:https://msdn.microsoft.com/en-us/library/windows/desktop/ms632667(v=vs.85).aspx