WINDOWPOS结构包含有关窗口大小和位置的信息。
typedef struct _WINDOWPOS { // wp
HWND hwnd;
HWND hwndInsertAfter;
int x;
int y;
int cx;
int cy;
UINT flags;
} WINDOWPOS;
会员
HWND
标识窗口。
hwndInsertAfter
以Z顺序指定窗口的位置(从前到后的位置)。该成员可以是放置此窗口的窗口的句柄,也可以是SetWindowPos功能列出的特殊值之一。
x
指定窗口左边缘的位置。
y
指定窗口顶部边缘的位置。
cx
指定窗口宽度(以像素为单位)。
cy
指定窗口高度,以像素为单位。
旗
指定窗口位置。该成员可以是以下值之一:
值 | 含义 |
SWP_DRAWFRAME | 在窗口周围绘制一个框架(在窗口的类描述中定义)。 |
SWP_FRAMECHANGED | 发送WM_NCCALCSIZE消息到窗口,即使窗口的大小没有被更改。如果未指定此标志,WM_NCCALCSIZE仅在窗口大小更改时发送。 |
SWP_HIDEWINDOW | 隐藏窗户 |
SWP_NOACTIVATE | 不激活窗口。如果未设置此标志,则该窗口将被激活并移至顶部或顶部的顶部(取决于【hWndInsertAfter】参数的设置)。 |
SWP_NOCOPYBITS | 舍弃客户区域的全部内容。如果未指定此标志,则在窗口大小或重新定位后,客户区的有效内容将保存并复制回客户区。 |
SWP_NOMOVE | 保留当前位置(忽略【X】和【Y】参数)。 |
SWP_NOOWNERZORDER | 不改变所有者窗口的Z位置。 |
SWP_NOREDRAW | 不重绘更改。如果设置此标志,则不会发生任何重印。这适用于客户端区域,非客户区域(包括标题栏和滚动条),并且由于窗口被移动而未覆盖父窗口的任何部分。当设置此标志时,应用程序必须显式地无效或重新绘制需要重新绘制的窗口和父窗口的任何部分。 |
SWP_NOREPOSITION | 与SWP_NOOWNERZORDER标志相同。 |
SWP_NOSENDCHANGING | 防止窗口收到WM_WINDOWPOSCHANGING消息。 |
SWP_NOSIZE | 保留当前大小(忽略【cx】和【cy】参数)。 |
SWP_NOZORDER | 保留当前的Z顺序(忽略【hWndInsertAfter】参数)。 |
SWP_SHOWWINDOW | 显示窗口。 |
也可以看看