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);