欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Qt笔记——对话框

程序员文章站 2022-05-16 10:57:26
...

模态对话框与非模态对话框

对话框的分类:
1.模态对话框:打开后不可以对其他窗口进行操作
2.非模态对话框:打开后仍可以对其他窗口进行操作

模态对话框的创建

#include<QDialog>
 connect(ui->actionNew,&QAction::triggered,[=](){
        QDialog dlg(this);
        dlg.resize(150,100);//重设对话框的大小
        dlg.exec();//弹出对话框
    });

非模态对话框的创建

connect(ui->actionNew,&QAction::triggered,[=](){
        QDialog * dlg = new QDialog(this);
        dlg->resize(150,100);
        dlg->setAttribute(Qt::WA_DeleteOnClose);
        dlg->show();
    });

消息对话框

QMessageBox 模态

错误对话框

connect(ui->actionNew,&QAction::triggered,[=](){
        
        QMessageBox::critical(this,"critical","错误");
    });

各个参数的含义:
this是对话框的父类对象,“critical”是对话框的名称,“错误”是对话框的文字提示
Qt笔记——对话框

信息对话框 模态

 connect(ui->actionNew,&QAction::triggered,[=](){
     
        QMessageBox::information(this,"inform","信息");
    });

参数含义同上
Qt笔记——对话框

提问对话框 模态

QMessageBox::question(this,"ques","提问",QMessageBox::Save|QMessageBox::Cancel);

前三个参数含义同上,第四个参数可以改变两个选项的值
Qt笔记——对话框
第五个参数:QMessageBox::Cancel
默认**的选项

Qt笔记——对话框
捕获用户做出的选择

 if(QMessageBox::Save == QMessageBox::question(this,"ques","提问",QMessageBox::Save|QMessageBox::Cancel,QMessageBox::Cancel))
            qDebug() << "选择的是保存";
        else
            qDebug() << "选择的是取消";

警告对话框

QMessageBox::warning(this,"warning","警告");

Qt笔记——对话框

其他标准对话框

颜色对话框

#include<QColorDialog>
QColor color = QColorDialog::getColor(QColor(255,0,0));

Qt笔记——对话框
文件对话框

#include<QFileDialog>
QFileDialog::getOpenFileName(this,"打开文件","D://","(*.docx)");

第三个参数:默认文件夹
第四个参数:只保留此格式的文件

字体对话框

#include<QFontDialog>
 bool flag;
        QFontDialog::getFont(&flag,QFont("仿宋",28));

Qt笔记——对话框

相关标签: Qt