把你的窗口的父窗口句柄设置为名称为Progman的窗口 的句柄就可以了。
HWND hDesktop = ::FindWindow("Progman", NULL);
//hDesktop = ::GetWindow(hDesktop, GW_CHILD);
CWnd* pWndDesktop = CWnd::FromHandle(hDesktop);
this->SetParent(pWndDesktop);
问题:
如果有两个窗口,一个是另一个父窗口,把父窗口的父窗口设为桌面后,这两个窗口的显示位置会错乱
本来父窗口在底下,设为桌面窗口后,自窗口或者到了父窗口底下或者在其他窗口上面。不能成为一个整体。
本文介绍了如何通过将窗口的父窗口句柄设置为名为“Progman”的桌面窗口句柄来实现窗口层级调整的方法。但同时也指出这种方法可能导致窗口显示位置错乱的问题。
1310

被折叠的 条评论
为什么被折叠?



