标准对话框
标准对话框时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));