Win32 SetWindowPos 函数详解
【摘要】 函数作用SetWindowPos 主要用来设置窗口位置及其在Z轴的序列 函数原型WINUSERAPI BOOL WINAPI SetWindowPos( HWND hWnd, //窗口句柄 HWND hWndInsertAfter,//窗口显示位置,见下表 int X, //x坐标 int Y, ...
函数作用
SetWindowPos
主要用来设置窗口位置及其在Z轴的序列
函数原型
WINUSERAPI BOOL WINAPI SetWindowPos(
HWND hWnd, //窗口句柄
HWND hWndInsertAfter,//窗口显示位置,见下表
int X, //x坐标
int Y, //y坐标
int cx, //宽度
int cy, //高度
UINT uFlags //窗口尺寸和定位的标志,见下表
);
参数含义
hWndInsertAfter
用来设置当前窗口,相对于屏幕上其它窗口在Z轴的位置
hWndInsertAfter | 含义 |
---|---|
HWND_BOTTOM | 将窗口置于Z序的底部 |
HWND_NOTOPMOST | 将窗口置于所有非顶层窗口之上(即在所有顶层窗口之后) |
HWND_TOP | 将窗口置于Z序的顶部 |
HWND_TOPMOST | 将窗口置于所有非顶层窗口之上。即使窗口未被激活窗口也将保持顶级位置 |
uFlags
用来确定窗口的状态和定位,下面的值可以用或来连接
uFlags | 含义 |
---|---|
SWP_ASYNCWINDOWPOS | 如果调用进程不拥有窗口,系统会向拥有窗口的线程发出需求 |
SWP_DEFERERASE | 防止产生WM_SYSNCPAINT消息 |
SWP_DRAWFRAME | 在窗口周围画个边框(定义在窗口类中描述) |
SWP_FRAMECHANGED | 给窗口发送WM_NCCALCSIZE消息,即使窗口尺寸没改变也发送 |
SWP_HIDEWINDOW | 隐藏窗口 |
SWP_NOACTIVATE | 不激活窗口 |
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序 |
SWP_SHOWWINDOW | 显示窗口 |
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)