qt:QMessageBox的常见用法

头文件:#include <QMessageBox>

Infomation消息对话框

初始化格式:

cpp 复制代码
QMessageBox * msgBox = new QMessageBox(QMessageBox::Information, "我是标题", "我是提示文字", 按钮);

按钮可以是以下取值,会在按键上显示出相映的英文:

QMessageBox::Ok,QMessageBox::Open,QMessageBox::Save,QMessageBox::Cancel,QMessageBox::Close,QMessageBox::Discard,QMessageBox::Apply,QMessageBox::Reset,QMessageBox::Yes,QMessageBox::No

我们可以改变按钮上的字

需要包含头文件#include <QPushButton>

cpp 复制代码
msgBox->button(QMessageBox::Ok)->setText("确定");

并且可以为该按钮绑定响应的事件

我们也可以改变窗体的图标(ICON)

cpp 复制代码
msgBox->setWindowIcon(QIcon(":/res/icon.png"));

我们也可以向常规窗体一样改变msgBox的大小

cpp 复制代码
msgBox->setFixedSize(200,100);

最后别忘了show一下

cpp 复制代码
msgBox->show();

Critical错误对话框

初始化格式

cpp 复制代码
QMessageBox * msgBox = new QMessageBox(QMessageBox::Critical, "我是标题", "我是提示文字", 按钮);

按钮格式与上文Information的按钮取值一样

Question询问对话框

初始化格式

cpp 复制代码
QMessageBox * msgBox = new QMessageBox(QMessageBox::Question, "我是标题", "我是提示文字", QMessageBox::Ok|QMessageBox::Cancel);

按钮格式与上文Information的按钮取值一样

比如说

cpp 复制代码
msgBox->button(QMessageBox::Ok)->setText("确定");
msgBox->button(QMessageBox::Cancel)->setText("取消");

Warning警告对话框

初始化格式

cpp 复制代码
QMessageBox * msgBox = new QMessageBox(QMessageBox::Warning, "我是标题", "我是提示文字", 按钮);

按钮格式与上文Information的按钮取值一样

自定义对话框

可以按照如下方法初始化一个空白对话框

cpp 复制代码
    QMessageBox * msgBox = new QMessageBox;
    msgBox->setWindowTitle("标题");
    msgBox->setText("提示性文字");
    msgBox->show();

可以看到,默认不带任何图标,带一个OK按钮,可以根据上文我们说的方法改变按钮样式

相关推荐
xcyxiner7 小时前
DicomViewer (目录调整) 2
qt
xcyxiner9 小时前
dcmtk vtk vtk-dicom(gdcm) 编译(debug) v2
qt
桥田智能2 天前
桥田智能 QT-650S:面向白车身焊装的 800kg 重载快换解决方案
开发语言·qt·系统架构
森G2 天前
75、服务器源码解析---------云视频服务项目
linux·服务器·网络·c++·qt
森G2 天前
77、线程池原理和实现------服务器源码解析----云视频服务项目
服务器·c++·qt
森G2 天前
71、打包发布---------打包发布
c++·qt
初圣魔门首席弟子2 天前
Node.js 详细介绍(知识库版)
windows·qt·node.js·知识库
C++ 老炮儿的技术栈2 天前
Qt工控实战:自研机器人TCP长连接客户端(粘包处理+心跳保活+自动重连完整源码解析)
qt·tcp/ip·机器人
郝学胜-神的一滴2 天前
CMake 019:程序生成与清理全解析
开发语言·c++·qt·程序人生·软件构建·cmake
森G3 天前
76、仿ASIO实现的Linux c++服务器------服务器源码解析----云视频服务项目
c++·qt