Winapi Win32:如果在显示父级之前创建,则在父级之后创建无模式对话框

Winapi Win32:如果在显示父级之前创建,则在父级之后创建无模式对话框,winapi,Winapi,我试图调试大型应用程序中的一个奇怪行为:如果在显示父窗口后创建子无模式对话框,则即使父窗口被激活,它们也会保持在父窗口之上。但是,如果我在显示父窗口之前创建它们(注意父窗口已经创建,但尚未显示),那么父窗口似乎不会尊重zorder中的孩子。。。如果单击父对话框以激活它,子对话框将位于父对话框的后面 什么原因会触发这种行为?请注意,这只是在调用父窗口上的ShowWindow()之前还是之后创建对话框的问题。您需要使非模态对话框归您称之为父窗口的对象所有。如果它是在父对象显示之后创建的,那么有什么理

我试图调试大型应用程序中的一个奇怪行为:如果在显示父窗口后创建子无模式对话框,则即使父窗口被激活,它们也会保持在父窗口之上。但是,如果我在显示父窗口之前创建它们(注意父窗口已经创建,但尚未显示),那么父窗口似乎不会尊重zorder中的孩子。。。如果单击父对话框以激活它,子对话框将位于父对话框的后面


什么原因会触发这种行为?请注意,这只是在调用父窗口上的ShowWindow()之前还是之后创建对话框的问题。

您需要使非模态对话框归您称之为父窗口的对象所有。如果它是在父对象显示之后创建的,那么有什么理由不需要显式拥有它吗?我们看不到您的代码,我也不想推测,如果对话框应该在所有者前面,那么总是需要传递所有者。