所以我已经做了2个窗口,从我的主窗口,我试图创建一个新的窗口,当我点击一个按钮
我与按钮连接的功能如下所示
void MainWindow::ProfileCreation()
{
CreateProfile cProfile;
cProfile.show();
cProfile.raise();
cProfile.activateWindow();
}
但是当我尝试点击按钮时,窗口打开大约0,5-1秒然后再次关闭
如果我在我的main.cpp文件中这样做,在我创建MainWindow的地方,它会正常工作并显示窗口
我该怎么做才能让窗口一直显示?
cProfile
是一个局部变量,我不完全知道QT,但我猜当ProfileCreation
退出时变量被破坏,窗口自动关闭。您必须保留cProfile
,无论是作为类成员,全局变量还是作为指针在堆上创建。
如果你的第二个窗口是一个对话框,你可以隐藏第一个窗口并执行第二个窗口。
this->hide();
dialog mainDialog;
dialog.setModal(true);
dialog.exec();