多窗口程序

时间:2010-06-27 16:25:31

标签: c++ winapi multi-window

我在stackoverflow上阅读了很多关于这个主题的文章,其中一些文章在这里,但没有人问我的问题。我会尽量具体。

我需要创建一个带有主窗口(窗口类“a”)的应用程序(本机WinAPI)。当用户点击那里的按钮时,会弹出一个“b”类窗口。它可能是模态的,我现在不在乎。

我尝试使用两个窗口类和两个窗口过程创建一个应用程序。但问题是当我关闭第二个窗口时,整个应用程序都会关闭。

谢谢。

1 个答案:

答案 0 :(得分:2)

猜测,第二个窗口的窗口过程基于主窗口的窗口过程,因此当它收到WM_DESTROY时,它正在调用PostQuitMessage。这对于顶级窗口来说是正常的,因为用户期望将其销毁以表示退出应用程序。对于不是这种情况的子窗口(模态或其他),所以孩子应(再次,通常)在其PostQuitMessage处理程序中调用WM_DESTROY