qt messagebox怎么用
1、要使用QMessageBox,首先需要添加头文件#include <QMessageBox>,在工程文件.pro 添加QT += widgets,一般桌面应用工程中工程文件中都会默认加上QT += widgets。
2、最简单的一种用法:
QMessageBox msgBox; // 生成对象
msgBox.setText("The document has been modified."); // 设置文本
msgBox.exec(); // 执行
3、升级用法设置更多属性:
QMessageBox msgBox; // 生成对象
msgBox.setText("The document has been modified."); // 设置文本
msgBox.setInformativeText("Do you want to save your changes?"); // 提示信息
msgBox.setStandardButtons(QMessageBox::Save | QMessageBox::Discard | QMessageBox::Cancel); // 包含按钮
msgBox.setDefaultButton(QMessageBox::Save); // 默认是哪个按钮
int ret = msgBox.exec(); // 执行
4、上面执行前面有 int ret 这里是我们点击哪个按钮之后的返回值。上面添加了三个按钮QMessageBox::Save | QMessageBox::Discard | QMessageBox::Cancel。点击save ret 就等于QMessageBox::Save。
5、如果提示信息不够,我们还可以设置详细的提示信息,在第三步基础上添加
msgBox.setDetailedText("this is detailed info"); // 设置详细的提醒信息
6、QMessageBox默认提供四种形式的弹窗分别是warning question infomation critical 。
7、这里演示一下warning的用法,其他三个的用法和这个差不多。
int ret = QMessageBox::warning(this, tr("My Application"), tr("The document has been modified.\n" "Do you want to save your changes?"), QMessageBox::Save | QMessageBox::Discard | QMessageBox::Cancel, QMessageBox::Save);