首页 > 其他分享 >QWidget设置成模态对话框并弹框显示

QWidget设置成模态对话框并弹框显示

时间:2023-02-20 15:59:19浏览次数:35  
标签:模态 FormProcessRoi Qt form 对话框 show QWidget 并弹 true

正确的做法: 

1、

FormProcessRoi *form = new FormProcessRoi(this);//只能用指针,不能实例化为对象
//Qt::NonModal 不阻塞
//Qt::WindowModal 阻塞父窗口,所有祖先窗口及其子窗口
//Qt::ApplicationModal 阻塞整个应用程序
form->setWindowModality(Qt::ApplicationModal); //设置阻塞类型
form->setAttribute(Qt::WA_ShowModal, true);    //属性设置 true:模态 false:非模态
form->setWindowFlags(Qt::WindowMinMaxButtonsHint | Qt::WindowCloseButtonHint | Qt::Dialog);
form->show();

2、

 FormAbout *a = new FormAbout(nullptr); //不能有父类

 

a->setAttribute(Qt::WA_ShowModal, true); //属性设置true:模态;false:非模态

 

a->setWindowTitle(tr("关于本软件"));

 

a->setWindowIcon(QIcon(":/res/icons/main.png"));

 

a->setWindowFlags(/*a->windowFlags()|*/ Qt::CustomizeWindowHint | Qt::WindowCloseButtonHint | Qt::Tool); //使得任务栏不会有该窗口的图标

 

a->show();

 

 

错误的做法:

 

FormProcessRoi form;

 

form.show();

 

标签:模态,FormProcessRoi,Qt,form,对话框,show,QWidget,并弹,true
From: https://www.cnblogs.com/zhimeng-hjs/p/17137686.html

相关文章