对话框
1、模态对话框(不可以对其他窗口进行操作)
1.1 QDialog motaiDialog(this);
1.2 motaiDialog.exec();//进入消息循环 阻塞方式 用exec方法调用的属于模态对话框
2、非模态对话框(可以对其他窗口进行操作)
2.1 QDialog *fdlg = new QDialog(this);//防止一闪而过,创建在堆区
2.2 fdlg->setAttribute(Qt::WA_DeleteOnClose);//防止反复创建导致内存溢出,设置属性关闭时删除部件
2.3 fdlg->show(); //show方法调用的属于模态对话框
3、标准对话框
3.1 对话框类型
QColorDialog, 颜色对话框
QErrorMessage, 错误对话框
QFileDialog, 选择文件或者目录对话框
QFontDialog, 字体对话框
QInputDialog, 输入对话框 允许用户输入一个值,并将其值返回
QMessageBox, 消息对话框 模态对话框,用于通知用户或向用户询问问题并接收答案
QProgressDialog,显示操作过程
QPrintDialog, 打印机配置
QPrintPreviewDialog, 打印预览
3.2消息对话框QMessageDialog
错误对话框:QMessageBox::critical(this,"警告","请关闭这个窗口");
信息对话框:QMessageBox::information(this,"信息","信息对话框");
问题对话框:QMessageBox::question(this,"提问","你好",QMessageBox::Save|QMessageBox::Cancel,QMessageBox::Cancel);
警告对话框:QMessageBox::warning(QWidget * parent, const QString & title, const QString & text, StandardButtons buttons = Ok, StandardButton defaultButton = NoButton)
参数列表::(父窗口,窗口标题,显示的文本信息,按键类型,默认关联回车的按键类型)
返回类型:StandardButton (返回按键类型)
3.3字体对话框QFontDialog
获取字体
bool flag;
QFont font = QFontDialog::getFont(&flag,QFont("华文彩云",36));
字体:font.family()
字号:font.pointSize()
加粗:font.bold()
倾斜:font.italic()
3.4颜色对话框QColorDialog
获取颜色
QColor Color= QColorDialog::getColor(QColor(255,0,0));
颜色中的RGB信息
红色 Color.red()
绿色 Color.green()
蓝色 Color.blue()
3.5文件对话框QFileDialog
获取文件路径
QString path=QFileDialog::getOpenFileName(this,"选择文本","C:\\Users\\qijiabin\\Desktop","(*.txt)");
参数列表(父亲,对话框标题,默认打开的路径,筛选器)
筛选器格式 "筛选的文件类型名(*.文件后缀 *.文件后缀)"
例如:fileName = QFileDialog::getOpenFileName(this,tr("Open Image"), "/home/jana", tr("Image Files (*.png *.jpg *.bmp)"));
如果您想使用多个过滤器,请用两个分号分隔每个过滤器 例如:"Images (*.png *.xpm *.jpg);;Text files (*.txt);;XML files (*.xml)"
源码
链接:https://pan.baidu.com/s/1S_8Fmg-9VtUsnKuva5DU0A
提取码:1234
–来自百度网盘超级会员V5的分享