设置窗口的z-order总是在最底部

想让窗口置顶,很简单,只需要在SetWindowPos中指定 HWND_TOPMOST就OK了,

但是如果想要窗口始终位于最底端,Windows却没有提供接口。

不过呢,Windows提供了一个消息WM_WINDOWPOSCHANGING, 

这个消息给了我们一个机会,当窗口的位置包括Z-order发生改变之前,让我们有机会修改窗口的属性。

 下面的代码片段可以解决我遇到的问题:

 

 1 if (uMsg == WM_WINDOWPOSCHANGING)

2 {
3         WINDOWPOS* wndPos = reinterpret_cast<WINDOWPOS*>(lParam);
4         wndPos->hwndInsertAfter = HWND_BOTTOM;
5 }
posted on 2014-07-22 15:11  sanlo  阅读(1333)  评论(0编辑  收藏  举报