我在stackoverflow上阅读了很多关于这个主题的文章,其中一些文章在这里,但没有人问我的问题。我会尽量具体。
我需要创建一个带有主窗口(窗口类“a”)的应用程序(本机WinAPI)。当用户点击那里的按钮时,会弹出一个“b”类窗口。它可能是模态的,我现在不在乎。
我尝试使用两个窗口类和两个窗口过程创建一个应用程序。但问题是当我关闭第二个窗口时,整个应用程序都会关闭。
谢谢。
答案 0 :(得分:2)
猜测,第二个窗口的窗口过程基于主窗口的窗口过程,因此当它收到WM_DESTROY
时,它正在调用PostQuitMessage
。这对于顶级窗口来说是正常的,因为用户期望将其销毁以表示退出应用程序。对于不是这种情况的子窗口(模态或其他),所以孩子应不(再次,通常)在其PostQuitMessage
处理程序中调用WM_DESTROY
。