Windows Win32 API-CurrentWindow到仅消息窗口并返回到原始窗口

Windows Win32 API-CurrentWindow到仅消息窗口并返回到原始窗口,windows,winapi,Windows,Winapi,我使用SetParent将窗口更改为只显示消息的窗口,但是,当我尝试使用SetParent恢复窗口时,我要么无法恢复窗口,要么出现了巨大的延迟?示例源代码 // Change to message-only HWND newParent = SetParent(currentHandle, HWND_MESSAGE); // Change back SetParent(newParent, currentHandle); 你把参数颠倒过来了。要还原原始父级,您需要: SetParent(

我使用SetParent将窗口更改为只显示消息的窗口,但是,当我尝试使用SetParent恢复窗口时,我要么无法恢复窗口,要么出现了巨大的延迟?示例源代码

// Change to message-only

HWND newParent = SetParent(currentHandle, HWND_MESSAGE);

// Change back

SetParent(newParent, currentHandle);

你把参数颠倒过来了。要还原原始父级,您需要:

SetParent(currentHandle, newParent);
请记住,在这两种情况下,您都在更改窗口的父窗口。因此,
SetParent
的第一个参数在两次都必须相同

问题的一部分是变量的名称不好。我会这样给他们命名:

// convert to message only
HWND previousParent = SetParent(window, HWND_MESSAGE);

// restore parent
SetParent(window, previousParent);