展开全部
设置顶层(Z-order)窗口和非顶层窗口都可以使用SetWindowPos.
如下api取消置顶:
SetWindowPos( hWnd, HWND_NOTOPMOST, 0, 0, 0, 0, SWP_NOMOVE|SWP_NOSIZE );
或者 SetWindowPos( hWnd,HWND_BOTTOM, 0, 0, 0, 0, SWP_NOMOVE|SWP_NOSIZE );
如下api取消置顶:
SetWindowPos( hWnd, HWND_NOTOPMOST, 0, 0, 0, 0, SWP_NOMOVE|SWP_NOSIZE );
或者 SetWindowPos( hWnd,HWND_BOTTOM, 0, 0, 0, 0, SWP_NOMOVE|SWP_NOSIZE );
更多追问追答
追问
那置顶呢?
有地时候它最小化,我想让他像QQ一样,先还原最小化,再置顶
发现WINDOWSTATE属性没效果
就用
SetWindowPos( hWnd, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOMOVE|SWP_NOSIZE );
才可以、
但取消不了
追答
置顶就是SetWindowPos( hWnd, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOMOVE|SWP_NOSIZE );
QQ的最小化是把主窗口隐藏了,ShowWindow( SW_HIDE ); 只有在托盘区有图标。
如果在托盘区收到了鼠标激活消息后再用ShowWindow( SW_SHOW )显示出来.
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询