たとえばfileと呼ばれるメイン ウィンドウ クラスがあり、各ファイル ウィンドウには複数の子ウィンドウ (たとえばpages ) があり、各ページには複数の子ウィンドウ (たとえばtext boxなど)
があります。ファイル、テキスト ボックスのハンドル、またはテキスト ボックスの子ウィンドウの 1 つ。
function がありGetParent()
ますが、それは 1 レベル上の親を返します。最上位のウィンドウを返すような関数を探しています。
アクションを実行するコードを次のように書きましたが、win32 にシステム関数があるかどうかについて質問がありますか?
HWND GetTopLevelWindow(HWND hChild)
{
HWND topParent = 0;
HWND h1 = hChild;
HWND h2;
while(topParent == 0)
{
h2 = GetParent(h1);
if(h2 == 0)
topParent = h1;
else
h1 = h2;
}
return topParent;
}