QMessageBox用法及技巧

news2024/9/21 12:42:16

一.QMessageBox是什么?

QMessageBox类为用户提供了主要的警告信息,用户可以根据需求选择需要的响应;

QMessageBox 还提供了一些常用的按钮,例如"确定"、"取消"、"是"、"否"等,并可以根据需要自定义按钮的文本和数量。通过设置不同的标志和参数,还可以控制消息框的样式、图标和默认按钮等。

二.用法与代码示例

1.简单应用

QMessageBox::information(this,  "警告",  "请检查网络连接!", QMessageBox::Yes | QMessageBox::No, QMessageBox::Yes);

第一个参数是父控件指针

第二个参数是标题

第三个参数是内容

第四个参数是窗口里面要多少个按钮(默认为OK)

第五个参数指定按下Enter时使用的按钮。(默认为NoButton,此时QMessageBox会自动选择合适的默认值。)

2.判断返回值方法一

switch(QMessageBox::information(this,"Warning",tr("Save changes to document?"),

      QMessageBox::Save|QMessageBox::Discard|QMessageBox::Cancel,QMessageBox::Save))

        {

        case QMessageBox::Save:

            qDebug() << " Warning button / Save " << endl;;

            break;

        case QMessageBox::Discard:

            qDebug() << " Warning button / Discard " << endl;;

            break;

        case QMessageBox::Cancel:

            qDebug() << " Warning button / Cancel " << endl;;

            break;

        default:

            break;

        }

        

3.判断返回值方法二及设置图标和logo

    QMessageBox msgBox;

    msgBox.setIcon(QMessageBox::Warning);

    msgBox.setText("This is a message box with a warning icon.");

    msgBox.setWindowTitle("Warning Example");

    msgBox.setStandardButtons(QMessageBox::Ok|QMessageBox::Yes);

    msgBox.setWindowIcon(QIcon("./checked2.png"));  //设置title logo

    msgBox.setIconPixmap(QPixmap("./voloff.png"));//可以设置告警图标

    int ret = msgBox.exec();

    qDebug()<<ret;  //返回值为宏值 :QMessageBox::Ok|QMessageBox::Yes

4.自定义button

    QMessageBox BOX;//实例化消息盒对象

    BOX.setWindowTitle("退出");//设置消息对话的标题

    BOX.setText("你确定要退出吗");//设置消息盒的提示内容

    BOX.addButton("确认",QMessageBox::AcceptRole);//自定义按钮

    BOX.addButton("取消",QMessageBox::RejectRole);//自定义按钮

    int ret=BOX.exec();//显示消息对话框

    qDebug()<<ret;  //返回值为宏值QMessageBox::AcceptRole

    if(ret==0)

    {

         qDebug() << " QMessageBox::AcceptRole " << endl;;

    }

    else if(ret==1)

    {

         qDebug() << " QMessageBox::RejectRole " << endl;;

    }

三.实用技巧

1.问题:

qt 主页面弹出一个页面A,然后页面A发出命令让主页面弹出一个弹框,但是弹框被挡在了页面A后面,无法操作

解决方法:

    QMessageBox::warning(this->pageA,tr("警告"), tr("模块未连接!"));

 设置this改为this->pageA,也就是让这个QMessageBox从pageA页面中弹出来。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1481692.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

redis 面试题

1 redis 如何扩容 Redis 的扩容主要分为两种场景&#xff0c;一种是单实例的内存扩容&#xff08;垂直扩容&#xff09;&#xff0c;另一种是Redis集群的扩容&#xff08;水平扩容&#xff09;。 单实例Redis内存扩容&#xff08;垂直扩容&#xff09; 硬件升级&#xff1a; 垂…

Spring MVC 和 Spring Cloud Gateway不兼容性问题

当启动SpringCloudGateway网关服务的时候&#xff0c;没注意好依赖问题&#xff0c;出现了这个问题&#xff1a; Spring MVC found on classpath, which is incompatible with Spring Cloud Gateway. 解决办法就是&#xff1a;删除SpringMVC的依赖&#xff0c;即下列依赖。 &…

年轻人怎么搞钱?

年轻人想要搞钱&#xff0c;可以考虑以下几个方面&#xff1a; 1. 创业&#xff1a;年轻人可以通过自己的创意&#xff0c;找到一个市场的空缺&#xff0c;开创自己的业务。可以从比较小的项目开始&#xff0c;逐渐扩大范围&#xff0c;积累经验和财富。 2. 投资&#xff1a;…

【C++从0到王者】第四十八站:最短路径

文章目录 一、最短路径二、单源最短路径 -- Dijkstra算法1.单源最短路径问题2.算法思想3.代码实现4.负权值带来的问题 三、单源最短路径 -- Bellman-Ford算法1.算法思想2.算法实现3.SPFA优化4.负权回路 四、多源最短路径 -- Floyd-Warshall算法1.算法思想2.算法实现 一、最短路…

python笔记_数据类型

定义&#xff1a;python的变量在使用前必须赋值&#xff0c;数据类型指的是变量指定的内存数据的类型 string字符串类型使用引号int整型整数float浮点型小数bool布尔值(逻辑)输出true/false A&#xff0c;整数类型 整型字节 1,python的整数有十六进制&#xff0c;十进制&#…

HDSRNet | 入局图像超分,异构动态卷积玩出新花样~

首发AIWalker&#xff0c;欢迎关注~ https://arxiv.org/abs/2402.15704 https://github.com/hellloxiaotian/HDSRNet 卷积神经网络可以通过深度网络架构和给定的输入样本自动学习特征。然而&#xff0c;所获得的模型的鲁棒性在不同的场景中可能具有挑战性。网络架构的差异越大…

基于C#开发OPC DA客户端——基于OPCDAAuto

OPC DA OPC DA(OPC Data Access)&#xff0c;即OPC数据访问接口&#xff0c;定义了数据交换的规范&#xff0c;包括&#xff1a;过程值、更新时间、数据品质等信息。 自动化接口中共定义了6类对象&#xff1a;OPCServer对象、OPCBrowser对象、OPCGroups对象、OPCGroup对象、O…

《最新出炉》系列初窥篇-Python+Playwright自动化测试-34-处理https 安全问题或者非信任站点-下篇

1.简介 这一篇宏哥主要介绍playwright如何在IE、Chrome和Firefox三个浏览器上处理不信任证书的情况&#xff0c;我们知道&#xff0c;有些网站打开是弹窗&#xff0c;SSL证书不可信任&#xff0c;但是你可以点击高级选项&#xff0c;继续打开不安全的链接。举例来说&#xff0c…

运用JProfiler分析Java程序中的OOM问题

前言 在Java开发过程中&#xff0c;内存管理是一项至关重要的任务。作为开发者&#xff0c;我们时常会遇到一个让人头疼的问题——Java堆空间溢出&#xff08;OutOfMemoryError&#xff0c;简称OOM&#xff09;。当程序试图分配超出Java虚拟机&#xff08;JVM&#xff09;堆大…

解决error: the following arguments are required问题

今天在运行代码的时候&#xff0c;文件报错如下&#xff1a; mcts.py: error: the following arguments are required: --num_sims, --levels 根据报错信息可以看出这应该是说--num_sims和--levels两个属性并没有定义&#xff0c;但在代码中找了许久&#xff0c;不知道要在哪里…

LeetCode238题:除自身以外数组的乘积(python3)

代码思路&#xff1a; 当前位置的结果就是它左部分的乘积再乘以它右部分的乘积&#xff0c;因此需要进行两次遍历&#xff0c;第一次遍历求左部分乘积&#xff0c;第二次遍历求右部分的乘积&#xff0c;再将最后的计算结果一起求出来。 class Solution:def productExceptSelf(…

外包干了7个月,技术退步明显.......

先说一下自己的情况&#xff0c;大专生&#xff0c;18年通过校招进入北京某软件公司&#xff0c;干了接近4年的功能测试&#xff0c;今年年初&#xff0c;感觉自己不能够在这样下去了&#xff0c;长时间呆在一个舒适的环境会让一个人堕落! 而我已经在一个企业干了四年的功能测…

上位机图像处理和嵌入式模块部署(当前机器视觉新形态)

【 声明&#xff1a;版权所有&#xff0c;欢迎转载&#xff0c;请勿用于商业用途。 联系信箱&#xff1a;feixiaoxing 163.com】 过去的机器视觉处理&#xff0c;大部分都是集中在上位机、或者是服务器领域&#xff0c;这种形式维持了很长的时间。这种业务形态下&#xff0c;无…

如何将一台电脑主机分裂成两台、三台?

有用户问&#xff1a;如何将一台电脑主机拆分成两台、三台甚至更多台使用&#xff1f; 这是什么意思&#xff1f; 简单解释一下&#xff1a;在一台计算机主机上&#xff0c;连接两台、三台或者更多台显示器&#xff0c;然后将这台主机的硬件资源分配给这些显示器&#xff0c;然…

Tomcat -2

1. 动静分离 ① 单机反向代理 7-2 代理服务器 7-5 tomcat 设置 7-3 测试&#xff1a; 代理服务器那里写什么就显示什么

外泌体相关基因肝癌临床模型预测——2-3分纯生信文章复现——02.数据格式整理(2)

内容如下&#xff1a; 1.外泌体和肝癌TCGA数据下载 2.数据格式整理 3.差异表达基因筛选 4.预后相关外泌体基因确定 5.拷贝数变异及突变图谱 6.外泌体基因功能注释 7.LASSO回归筛选外泌体预后模型 8.预后模型验证 9.预后模型鲁棒性分析 10.独立预后因素分析及与临床的…

【论文笔记】Improving Language Understanding by Generative Pre-Training

Improving Language Understanding by Generative Pre-Training 文章目录 Improving Language Understanding by Generative Pre-TrainingAbstract1 Introduction2 Related WorkSemi-supervised learning for NLPUnsupervised pre-trainingAuxiliary training objectives 3 Fra…

AttributeError: ‘list‘ object has no attribute ‘view‘

问题描述 训练yolov9的时候遇到了下面的问题。 In loss_tal.py: pred_distri, pred_scores torch.cat([xi.view(feats[0].shape[0], self.no, -1) for xi in feats], 2).split( (self.reg_max * 4, self.nc), 1) The error is as follows&#xff1a; AttributeError: list …

rtt的io设备框架面向对象学习-touch设备

目录 1.触摸设备基类2.触摸设备基类的子类3.初始化/构造流程3.1设备驱动层3.2 设备驱动框架层3.3 设备io管理层 4.总结5.使用5.1实例 1.触摸设备基类 此层处于设备驱动框架层。此层的类是抽象类。 在/ components / drivers / include / drivers /touch.h定义了如下touch设备…

unity 场景烘焙中植物叶片(单面网络)出现的白面

Unity版本 2021.3.3 平台 Windows 在场景烘焙中烘焙植物的模型的时候发现植物的叶面一面是合理的&#xff0c;背面是全白的&#xff0c;在材质球上勾选了双面烘焙&#xff0c;情况如下 这个问题可能是由于植物叶片的单面网格导致的。在场景烘焙中&#xff0c;单面网格只会在一…