私はMSDNを見ます、それは言います:
http://msdn.microsoft.com/en-us/library/windows/desktop/ms632680(v=vs.85).aspx
作成されたウィンドウが子ウィンドウの場合、その既定の位置は Z オーダーの一番下になります。作成されたウィンドウが最上位のウィンドウである場合、その既定の位置は Z オーダーの一番上になります (ただし、作成されたウィンドウ自体が最上位でない限り、最上位のすべてのウィンドウの下になります)。
ただし、別のドキュメントには次のように記載されています。
http://msdn.microsoft.com/en-us/library/windows/desktop/ms632599(v=vs.85).aspx
アプリケーションがウィンドウを作成すると、システムはそれを同じタイプのウィンドウの z オーダーの一番上に配置します
私はこのようにそれをテストしました:
btn1 = ::CreateWindow(L"button", L"OK", WS_TABSTOP|BS_DEFPUSHBUTTON|WS_VISIBLE|WS_CHILD
, 10, 10, 50, 30, hWnd, (HMENU)51, hInst, NULL);
btn2 = ::CreateWindow(L"button", L"Cancel", WS_TABSTOP|WS_CHILD|BS_PUSHBUTTON|WS_VISIBLE
, 20, 20, 70, 30, hWnd, (HMENU)52, hInst, NULL);
ウィンドウに 2 つのボタンを作成しましたが、それらが重なり合っていました。後で作成したボタンが、最初に作成したボタンを覆っていることがわかります。
MSDN の最初のステートメントは、私のテストと矛盾していますか?