标准对话框
标准对话框时Qt内置的一系列对话框,用于简化开发,因为在大多程序中,很多对话框是相同的,如打开文件、设置颜色、打印设置等,这些对话框可以通用,因此没必要每一个程序都实现这些对话框。
-
Qt的内置对话框主要有以下几类:
-
QColorDialog: 选择颜色
-
QFileDialog: 选择文件或目录
-
QFontDialog: 选择字体
-
QInputDialog: 允许用户输入一个值,并返回该值
-
QMessageBox: 一个模态对话框,用于显示信息、询问问题等
-
QPageSetupDialog:为打印机提供纸张相关的选项
-
QPrintDialog: 配置打印机
-
QPrintPreviewDialog:打印预览
-
QProgressDialog: 显示操作过程
-
其中QMessageBox——消息对话框较为常用,以下具体介绍:
-
首先消息对话框在头文件中:#include <QMessageBox>
-
用QMessageBox 静态成员函数创建对话框
其中每个成员函数接收5个参数:
参数1:父亲 参数2:标题 参数3:显示内容 参数4:按键类型 参数5:默认关联回车按键
后两个会有默认参数
返回值 是StandardButton类型
-
critical 错误对话框
QMessageBox::critical(this,"标题为critical","错误的窗口");
运行结果:
-
information 信息对话框
//信息对话框 QMessageBox::information(this,"标题为info","信息的窗口");
-
question 提问对话框
//提问对话框 QMessageBox::question(this,"标题为提问","提问的窗口");
-
warning 警告窗口
//警告对话框 QMessageBox::warning(this,"标题为warning","警告的窗口");
-
PS:利用返回值判断用户点击的是哪个按钮(用户点啥返回啥按钮)
if(QMessageBox::Yes == QMessageBox::question(this,"标题为提问","提问的窗口")){ qDebug()<< " 选择的是Yes "; } else{ qDebug()<< " 选择的是No "; }
运行结果:
点击YES后:
其他标准对话框
-
颜色对话框 QColorDialog::getColor
//颜色对话框 QColorDialog::getColor(QColor((255,0,0)));
-
文件对话框 QFileDialog::getOpenFileName(父亲,标题,默认路径,过滤文件)
返回值为选取的文件路径
//文件对话框 QFileDialog::getOpenFileName(this,"标题为打开文件","D:\\QtProject");
-
字体对话框 QFontDialog::getFont(bool *,默认选择的字体)
//字体对话框 bool flag; QFontDialog::getFont(&flag,QFont("华文彩云",36));