Qt消息对话框
问题对话框
对应API
[static] QMessageBox::StandardButton QMessageBox::question(
QWidget *parent,
const QString &title,
const QString &text,
QMessageBox::StandardButtons buttons = StandardButtons(Yes | No),
QMessageBox::StandardButton defaultButton = NoButton)
举例:
//参数1:父窗口
//参数2:对话框标题
//参数3:对话框提示文本
//参数4:对话框按钮
//参数5:对话框刚弹出时默认选择的按钮
//返回值:点击的按钮
auto choice = QMessageBox::question(this,"Question","你是否想退出,请选择:",QMessageBox::Ok | QMessageBox::Cancel,QMessageBox::Ok);
switch (choice) {case QMessageBox::Ok://do somethingqDebug() << "选择了ok";break;case QMessageBox::Cancel://do somethingqDebug() << "选择了cancel";break;default:break;
}
提示对话框
对应API
[static] QMessageBox::StandardButton QMessageBox::information(QWidget * parent,const QString & title,const QString & text, QMessageBox::StandardButtons buttons = Ok,QMessageBox::StandardButton defaultButton = NoButton)
举例:
//参数1:父窗口
//参数2:对话框标题
//参数3:对话框提示文本
//其余几个参数使用默认的就好了,提示对话框不需要什么按钮
//返回值:点击的按钮
auto choice = QMessageBox::information(this, "Information", "即将退出!");
switch (choice) {case QMessageBox::Ok://do somethingqDebug() << "选择了ok";break;case QMessageBox::Cancel://do somethingqDebug() << "选择了cancel";break;default:break;
}
警告对话框
对应API
[static] QMessageBox::StandardButton QMessageBox::warning(QWidget * parent,const QString & title,const QString & text, QMessageBox::StandardButtons buttons = Ok,QMessageBox::StandardButton defaultButton = NoButton)
举例:
//参数1:父窗口
//参数2:对话框标题
//参数3:对话框提示文本
//参数4:对话框按钮
//参数5:对话框刚弹出时默认选择的按钮
//返回值:点击的按钮
auto choice = QMessageBox::warning(this, "Warning", "会被删除!",QMessageBox::Ok | QMessageBox::Cancel,QMessageBox::Cancel);
switch (choice) {case QMessageBox::Ok://do somethingqDebug() << "选择了ok";break;case QMessageBox::Cancel://do somethingqDebug() << "选择了cancel";break;default:break;
}
错误对话框
对应API
[static] QMessageBox::StandardButton QMessageBox::critical(QWidget * parent,const QString & title,const QString & text, QMessageBox::StandardButtons buttons = Ok,QMessageBox::StandardButton defaultButton = NoButton)
举例:
//参数1:父窗口
//参数2:对话框标题
//参数3:对话框提示文本
//其余几个参数使用默认的就好了,错误对话框不需要什么按钮
//返回值:点击的按钮
auto choice = QMessageBox::critical(this, "critical", "错误操作!");
switch (choice) {case QMessageBox::Ok://do somethingqDebug() << "选择了ok";break;case QMessageBox::Cancel://do somethingqDebug() << "选择了cancel";break;default:break;
}
关于对话框
就是一个简单的对话框,可以介绍一些版本信息什么的
对应API
[static] void QMessageBox::about(QWidget * parent,const QString & title,const QString & text)
举例:
//参数1:父窗口
//参数2:对话框标题
//参数3:对话框提示文本
QMessageBox::about(this, "about", "版本:v1.1");
自定义消息对话框
相关API
- 设置标题
-
void QMessageBox::setWindowTitle(const QString &title)
- 设置自定义图片
-
void setIconPixmap(const QPixmap &pixmap)
- 设置文本
-
void setText(const QString &text
- 设置按钮
-
//自定义按钮role一般设置为QMessageBox::ButtonRole::ActionRole //返回值:添加的按钮 QPushButton *QMessageBox::addButton(const QString &text, QMessageBox::ButtonRole role)
- 获取点击的按钮
-
QAbstractButton *QMessageBox::clickedButton() const
举例:
QMessageBox custom_message_box;//1.设置标题
custom_message_box.setWindowTitle("自定义对话框");
//2.设置图片
custom_message_box.setIconPixmap(QPixmap(":/11.png").scaled(20, 20));
//3.设置文本
custom_message_box.setText("这是一个自定义对话框");
//4.添加按钮
QPushButton * btn_yes = custom_message_box.addButton("YES", QMessageBox::ButtonRole::ActionRole);
QPushButton * btn_no = custom_message_box.addButton("NO", QMessageBox::ButtonRole::ActionRole);
//模态显示对话框
custom_message_box.exec();
//5.获取点击的按钮
if (custom_message_box.clickedButton() == btn_yes) {//do something...
} else if (custom_message_box.clickedButton() == btn_no) {//do something...
}
学习链接:https://github.com/0voice
相关文章:

Qt消息对话框
问题对话框 对应API [static] QMessageBox::StandardButton QMessageBox::question( QWidget *parent, const QString &title, const QString &text, QMessageBox::StandardButtons buttons StandardButtons(Yes | No), QMessageBox::StandardButton defaultButt…...

FreeRTOS的队列管理
“队列”提供了一种任务到任务、任务到中断和中断到任务的通信机制。 队列特性 数据存储 队列可以容纳有限数量的固定大小的数据项。队列可以容纳的最大项目数称为其“长度”。每个数据项的长度和大小都是在创建队列时设置的。 队列通常用作先进先出(FIFO…...
买卖股票的最佳时机(动态规划方法总结)
总结一下,买卖股票系列的动态规划思想,贪心解法或者其他解法不做描述。 总结 121. 买卖股票的最佳时机 只有一次交易机会,每天有两种状态:持有股票和不持有股票; 122. 买卖股票的最佳时机 II 有多次交易机会&#x…...

KubeSphere安装mysql8.4.0
背景 KubeSphere 是在 Kubernetes 之上构建的以应用为中心的多租户容器平台,完全开源,提供全栈的 IT 自动化运维的能力,简化企业的 DevOps 工作流。KubeSphere 提供了运维友好的向导式操作界面,帮助企业快速构建一个强大和功能丰富的容器云平台。 安装组件前提&am…...

SpringBoot项目热部署-devtools
DevTools 会使用两个类加载器(一个用于加载不变的类,一个用于加载可能会变化的类),每次重启只重新加载管理变化的类的加载器,因此会快很多 1.导入依赖 <dependency> <groupId>org.springframework.boot&l…...

从MySQL到OceanBase离线数据迁移的实践
本文作者:玉璁,OceanBase 生态产品技术专家。工作十余年,一直在基础架构与中间件领域从事研发工作。现负责OceanBase离线导数产品工具的研发工作,致力于为 OceanBase 建设一套完善的生态工具体系。 背景介绍 在互联网与云数据库技…...
ifconfig 和 ip addr
1. 工具所属套件 ifconfig:属于较老的 net-tools 套件。曾是 Unix 和 Linux 系统上广泛使用的工具。ip addr:属于较新的 iproute2 套件。它取代了 ifconfig,并逐渐成为现代 Linux 系统上更常用的工具。 2. 功能覆盖范围 ifconfigÿ…...
NCCL报错
1、报错信息: raise RuntimeError("Distributed package doesnt have NCCL " "built in") RuntimeError: Distributed package doesnt have NCCL built in 2、报错原因: windows系统不支持nccl,采用gloo; …...
域7:安全运营 第16章 安全运营管理
第七域包括 16、17、18、19 章。 第七域所涵盖的广泛知识点,与我们的安全运营工作之间存在着高度的契合性。这些知识点不仅为我们的安全运营提供了有力的理论支撑,还使得SOC(安全运营中心)在日常运作中能够更加高效地发挥作用。通…...
研发线上事故风险解读之数据库存储
专业在线打字练习平台-巧手打字通,只输出有价值的知识。 一 前言 本文继续基于《线上事故案例集》,进一步深入梳理线上事故数据存储方面的问题点,重点关注数据库存储在使用和优化过程中可能出现的问题,旨在为读者提供具有实践指导…...
react hooks中在setState后输出state为啥没有变化,如何解决
在 React Hooks 中,setState 的概念被 useState 或 useReducer 钩子所替代。与类组件中的 setState 一样,这些钩子也是异步更新状态的。因此,如果你尝试在调用 setState(即 setXXX 函数)后立即读取状态值,你…...

C++设计模式——代理模式
欢迎来到 破晓的历程的 博客 ⛺️不负时光,不负己✈️ 文章目录 引言代理模式的定义代理模式的具体实现 引言 我们经常听到代理服务器「代理服务器是一个中间服务器,能够接收客户端的请求,并代表客户端向服务器发起请求,然后将服…...
docker 复制文件,清除不再使用数据导出以及导出文件系统
docker cp -a centos :/etc/centos-release #将容器内文件复制到宿主机 docker cp /etc/issue centos:/root #将宿主机文件复制到容器内 docker export: 将一个运行的或者挺值得容器的文件系统导出为一个tar归档文件。需要注意,docker export 不会包含该…...

【Vue】Vue3.0(十一)Vue 3.0 中 computed 计算属性概念、使用及示例
上篇文章:【Vue】Vue3.0(十)toRefs()和toRef()的区别及使用示例 🏡作者主页:点击! 🤖Vue专栏:点击! ⏰️创作时间:2024年10月15日10点23分 文章目录 Vue 3.0中…...

【第三版 系统集成项目管理工程师】第17章 法律法规和标准规范
持续更新。。。。。。。。。。。。。。。 【第三版】第17章 法律法规和标准规范 17.1法律法规17.1.1 法与法律 P5801.基本概念-P5802.本质与特征-P580 17.1.2 法律体系1.世界法律体系(非重点)-P5802.中国特色社会主义法律体系-P581 17.1.3 法的效力1.对象效力-P5822.空间效力-…...

安装 LLM 编程工具 cursor
1,网址 cursor.com 点击 Download for Free 下载安装包 下载到一个300KB的安装压缩包,解压后双击后,点 open 安装过成会下载真正的应用程序 点击 continue 登陆 比如选择使用 github账号登陆 则会弹出如下网页: 先登陆 github&a…...
Java链式编程的定义、例子、使用方法、实际应用场景、自动装配构造
链式编程(Fluent Interface)是一种编程风格,允许通过方法调用连接在一起进行操作,通常用于提高代码的可读性和简洁性。在 Java 中,链式编程常通过返回 this(当前对象)来实现。这种做法在构建器模…...
用 Git Stash 临时保存修改,轻松切换任务!
在开发过程中,我们经常会遇到这样的情况:正在写代码,突然领导或同事让你赶紧处理一个紧急 bug,但你当前的代码还没写完,不能提交,这时候该怎么办呢?别慌,Git 的 stash 命令正好能帮上…...

Android 下通过触发 SIGTRAP 信号实现反调试
版权归作者所有,如有转发,请注明文章出处:https://cyrus-studio.github.io/blog/ 详细的 Linux 信号列表 Linux 信号是一种用于进程间通信(IPC)和异常处理的机制。以下是详细的 Linux 信号列表,包含信号名…...

【MySQL】 表的增删操作
目录 1.Create(增) 1.1.单行数据 全列插入 1.2.多行数据 指定列插入 1.3.插入否则更新 1.4.替换数据(REPLACE) 2.Delete(删) 2.1.删除表中的某个条目 2.2.删除整张表数据 2.3.截断表 1.Create…...
利用ngx_stream_return_module构建简易 TCP/UDP 响应网关
一、模块概述 ngx_stream_return_module 提供了一个极简的指令: return <value>;在收到客户端连接后,立即将 <value> 写回并关闭连接。<value> 支持内嵌文本和内置变量(如 $time_iso8601、$remote_addr 等)&a…...
Admin.Net中的消息通信SignalR解释
定义集线器接口 IOnlineUserHub public interface IOnlineUserHub {/// 在线用户列表Task OnlineUserList(OnlineUserList context);/// 强制下线Task ForceOffline(object context);/// 发布站内消息Task PublicNotice(SysNotice context);/// 接收消息Task ReceiveMessage(…...

[10-3]软件I2C读写MPU6050 江协科技学习笔记(16个知识点)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16...

从零开始打造 OpenSTLinux 6.6 Yocto 系统(基于STM32CubeMX)(九)
设备树移植 和uboot设备树修改的内容同步到kernel将设备树stm32mp157d-stm32mp157daa1-mx.dts复制到内核源码目录下 源码修改及编译 修改arch/arm/boot/dts/st/Makefile,新增设备树编译 stm32mp157f-ev1-m4-examples.dtb \stm32mp157d-stm32mp157daa1-mx.dtb修改…...
Swagger和OpenApi的前世今生
Swagger与OpenAPI的关系演进是API标准化进程中的重要篇章,二者共同塑造了现代RESTful API的开发范式。 本期就扒一扒其技术演进的关键节点与核心逻辑: 🔄 一、起源与初创期:Swagger的诞生(2010-2014) 核心…...
CSS设置元素的宽度根据其内容自动调整
width: fit-content 是 CSS 中的一个属性值,用于设置元素的宽度根据其内容自动调整,确保宽度刚好容纳内容而不会超出。 效果对比 默认情况(width: auto): 块级元素(如 <div>)会占满父容器…...

elementUI点击浏览table所选行数据查看文档
项目场景: table按照要求特定的数据变成按钮可以点击 解决方案: <el-table-columnprop"mlname"label"名称"align"center"width"180"><template slot-scope"scope"><el-buttonv-if&qu…...

【QT控件】显示类控件
目录 一、Label 二、LCD Number 三、ProgressBar 四、Calendar Widget QT专栏:QT_uyeonashi的博客-CSDN博客 一、Label QLabel 可以用来显示文本和图片. 核心属性如下 代码示例: 显示不同格式的文本 1) 在界面上创建三个 QLabel 尺寸放大一些. objectName 分别…...

运行vue项目报错 errors and 0 warnings potentially fixable with the `--fix` option.
报错 找到package.json文件 找到这个修改成 "lint": "eslint --fix --ext .js,.vue src" 为elsint有配置结尾换行符,最后运行:npm run lint --fix...
codeforces C. Cool Partition
目录 题目简述: 思路: 总代码: https://codeforces.com/contest/2117/problem/C 题目简述: 给定一个整数数组,现要求你对数组进行分割,但需满足条件:前一个子数组中的值必须在后一个子数组中…...