一、标准对话框
标准对话框,是Qt内置的一系列对话框,用于简化开发。
Qt的内置对话框大致分为以下几类:
- QColorDialog:选择颜色
- QFileDialog:选择文件或者目录
- QFontDialog:选择字体
- QInputDialog:允许用户输入一个值,并将其值返回
- QMessageBox:模态对话框,用于显示信息、询问问题等
- QPageSetupDialog:为打印机提供纸张相关的选项
- QPrintDialog:打印机配置
- QPrintPreviewDialog:打印预览
- QProgressDialog:显示操作过程
二、自定义消息框
Qt支持模态对话框和非模态对话框。
// 模态对话框创建
// QDialog dlg(this);
// dlg.resize(200,100);
// dlg.exec(); // 阻塞
// qDebug()<<"弹出对话框!";
// 非模态对话框创建
// QDialog dlg2(this); // 创建到了栈上,会出现一闪而过的效果
QDialog * dlg2 = new QDialog(this);
dlg2->resize(200,100);
dlg2->show();
// 需要设置属性给dlg2,防止内存泄漏的风险
dlg2->setAttribute(Qt::WA_DeleteOnClose);