我正在使用Qt构建一个UI,我需要在主应用程序窗口之前出现一个对话窗口,以便用户可以选择一些文件来加载ans的东西像那样。 我有什么是一个相当简单的主:Qt应用程序挂在退出(在QDialog exec后)
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
IView *view = new QtView();
view->showView();
int rc = a.exec();
std::cout << "exit" << std::endl;
return rc;
}
的QtView类是具体实现的iView接口。 它也有主窗口实例和一个QDialog实例。诠释查看 - > showView()方法,这是我的本钱:
void QtView::showView()
{
this->_configDialog->exec();
this->_mainAppWindow->show();
}
它工作正常,在对话框打开,当用户点击OK,出现EXEC回报和主窗口。问题是,当我离开主窗口时,我得到了一个僵尸进程,尽管所有的窗口都关闭了,但应用程序似乎仍然挂起,我从来没有得到主要返回之前我打印出来的“退出”。 我不确定我做错了什么,但即使我点击十字关闭对话框,主窗口打开,并且一旦关闭,整个事物就会挂在那里,我得到相同的resutl。
如果有人有任何建议,那很酷。 谢谢。
2010-11-30
dotminic