森林笔记之Qt:消息对话框(消息盒子)

    技术2023-06-15  67

    消息对话框QMessageBox 类提供一个模态的对话框来通知一些信息,或者向用户提出一个问题并且获取答案等。

    在Qt5中的帮助文档如下图。 以下是这些枚举描述标准按钮的标志。 每个按钮都有一个定义的按钮角色。

    基本消息对话框 //问题对话框 QMessageBox::question(this,tr("问题对话框"), tr("你有问题吗??"),QMessageBox::Yes,QMessageBox::No); //提示对话框 QMessageBox::information(this,tr("提示对话框"), tr("提示你记得戴口罩"),QMessageBox::Ok); //警告对话框 QMessageBox::warning(this,tr("警告对话框"), tr("出门必须戴口罩,警告一遍"),QMessageBox::Abort); //错误对话框 QMessageBox age; age.setIcon(QMessageBox::Critical); QMessageBox::critical(this,tr("错误对话框"), tr("你现在没有戴口罩!!!"),QMessageBox::YesToAll); //关于对话框 QMessageBox::about(this,tr("关于对话框"), tr("关于戴口罩通知你"));

    运行后的截图

    自定义消息盒子 当以上的消息盒子不满足你,还可以自定义对话框。 { //自定义消息对话框 /** 核心: 1.标题 setWindowTitle() 2.内容 setText () 、setInformativeText() 3.按键:setStandardButtons() 扩展:(其他已有的消息盒子,都要自己的,好像自定义的才可以) 4.图标 5.给按键取别名 6.设置默认按键 7.根据选择的按键做出dui对应的反应 */ QMessageBox msgBox; //1.标题 msgBox.setWindowTitle("自定义标准对话框"); // 2.内容 msgBox.setText("The document has been modified."); msgBox.setInformativeText("Do you want to save your changes?"); // 3.按键 msgBox.setStandardButtons(QMessageBox::Save | QMessageBox::Discard | QMessageBox::Cancel); //4.图标 QPixmap pixmap("G:/QTmake/0630/xxhz/813.jpg"); msgBox.setIconPixmap(pixmap); //5.给按键取别名 msgBox.setButtonText(QMessageBox::Discard,"Don`t Save"); //6.设置默认按键 msgBox.setDefaultButton(QMessageBox::Save); int ret = msgBox.exec(); //7.根据选择的按键做出反应 switch (ret) { case QMessageBox::Save: { qDebug()<<"保存"; } break; case QMessageBox::Discard: qDebug()<<"不确定保存"; break; case QMessageBox::Cancel: qDebug()<<"放弃"; break; default: // should never be reached break; } }

    基本上消息对话框的功能都是这些了,可以去找帮助文档,去实现更多样化的功能。


    博客新手、菜鸟工程师。向往更好的生活,加油!如有侵权,请联系删除。如果对读者有用,欢迎转载或者点赞哦。
    Processed: 0.046, SQL: 10