我用mfc多线程新建对话框,对话框只是闪一下就消失了,该线程就结束了,不知该怎样做让它通过关闭按钮消失

2024-12-28 22:56:53
推荐回答(3个)
回答1:

dlg->DoModal()

或,变量dlg要为全局变量
你程序中的是局部变量,生存期showwindow后就结束了

回答2:

dlg应该定义为全局的,按照你现在的定义,只要程序退出这个函数,dlg变量就无效了,当然对话框也就消失了。

回答3:

.....
dlg->ShowWindow(SW_SHOW);
MSG msg;
while(GetMessage(&msg,0,0,0))
{
TranslateMessage (&msg);
DispatchMessage (&msg);
}
还有就是有new就要delete,并且赋值NULL,这是习惯~