当前位置: 首页 > news >正文

QT实现QInputDialog中文按钮

这是我记录Qt学习过程心得文章的第三篇,主要是为了方便QInputDialog输入框的使用,通过自定义的方式,按钮中文化,统一封装成一个函数,还是写在了Skysonya类里面。

实现代码:

//中文按钮文本输入对话框
QString Skysonya::inputDialog(QString dlgTitle, QString labelText, QString textValue)
{QString inputText{};QLineEdit::EchoMode echoMode = QLineEdit::Normal;  //正常文字输入;//::Password;密码输入QInputDialog *getText = new QInputDialog();getText->setOkButtonText("确定");getText->setCancelButtonText("取消");getText->setWindowTitle(dlgTitle);getText->setLabelText(labelText);getText->setTextValue(textValue);getText->setTextEchoMode(echoMode);if (QDialog::Accepted == getText->exec()){inputText = getText->textValue();}return inputText;
}
具体使用:

//文件
void MainWindow::slot_file_triggered()
{//输入对话框QString strInfo = skysonya.inputDialog("对话框", "请输入:");skysonya.messageBox("warning", "输入对话框", strInfo);
}
自定义类:
#ifndef SKYSONYA_H
#define SKYSONYA_H
#include <QDebug>
#include <QFile>
#include <QInputDialog>
#include <QMessageBox>
#include <QObject>
#include <QPushButton>
#include <QString>
#include <QTextCodec>enum EncodingFormat
{ANSI,UTF16LE,UTF16BE,UTF8,UTF8BOM,
};class Skysonya : public QObject
{Q_OBJECTQ_ENUM(EncodingFormat)
public:explicit Skysonya(QObject *parent = nullptr);~Skysonya();QString doAppAbout(QString appName);                                               //程序关于信息bool messageBox(QString msgType, QString dlgTitle, QString strInfo);               //中文提示对话框QString inputDialog(QString dlgTitle, QString labelText, QString textValue = "");  //中文按钮文本输入对话框QTextCodec *getFileCharacterEncoding(const QString &fileName);                     //获取文件编码格式函数QString openFileByIOWhole(const QString &fileName);                 //用QFile打开文件,整体读取QString openFileByIOLines(const QString &fileName);                 //用QFile打开文件,逐行读取QString openFileByStreamWhole(const QString &fileName);             //用QTextStream读取文件,整体读取QString openFileByStreamLines(const QString &fileName);             //用QTextStream读取文件,逐行读取bool saveFileByIOWhole(const QString &fileName, QString text);      //用QFile保存文件,整体保存bool saveFileByStreamWhole(const QString &fileName, QString text);  //用QTextStream保存文件,整体保存private:QString appVersion;       //软件版本号QString buildTime;        //程序构建时间QString qtVersion;        // QT版本号QString fun_buildTime();  //获取程序构建时间
};#endif  // SKYSONYA_H

完整的示例地址:https://download.csdn.net/download/skysonya_shisy/89861254

相关文章:

QT实现QInputDialog中文按钮

这是我记录Qt学习过程心得文章的第三篇&#xff0c;主要是为了方便QInputDialog输入框的使用&#xff0c;通过自定义的方式&#xff0c;按钮中文化&#xff0c;统一封装成一个函数&#xff0c;还是写在了Skysonya类里面。 实现代码&#xff1a; //中文按钮文本输入对话框 QSt…...

Redis 常用指令技术解读

全文目录&#xff1a; 前言前言摘要简介概述Redis的核心特性Redis指令分类 核心源码解读SET和GET指令EXPIRE指令HSET和HGET指令LPUSH和LPOP指令SADD和SMEMBERS指令ZADD和ZRANGE指令 案例分析案例1&#xff1a;用户登录会话管理案例2&#xff1a;排行榜实现 应用场景演示优缺点分…...

Web前端入门

文章目录 前言1 Web前端概述1.1 网站和网页1.2 HTML语言1.3 网页的形成1.4 常用浏览器1.5 浏览器内核&#xff08;渲染引擎)1.6 web标准 2 HTML标签2.1 开发工具2.2 HTML语法规则2.3 标签的关系2.4 HTML注释标签2.5 结构标签 3 常用标签3.1 标题标签3.2 段落标签3.3 换行标签3.…...

贝塞尔曲线详细讲解,如何用 Canvas 绘制三阶贝塞尔曲线?

比如我们要画一个这样的曲线&#xff0c;我们该怎么画了 两个点Y轴一样高&#xff0c;起点&#xff1a;&#xff08;200,100&#xff09;终点&#xff1a;&#xff08;300&#xff0c;100&#xff09;中间的弧度怎么弄了&#xff1f; <canvas id"c1" width"6…...

Ubuntu20.04卸载ros2 foxy版本安装ros1 noetic版本

前言 如果你ubuntu中没有ros&#xff0c;可以试着直接从鱼香ros一键安装包指令处开始。 卸载ros2 sudo apt-get remove ros-*接下来如果你直接使用鱼香ros的一键安装命令&#xff0c;会出错。 设置源 设置源&#xff0c;这里使用的是中科大的。 sudo sh -c . /etc/lsb-r…...

PicGo+Gitee搭建Typora图床

PicGoGitee搭建Typora图床 下载PicGo 下载链接&#xff1a;https://picgo.github.io/PicGo-Doc/zh/guide/#%E4%B8%8B%E8%BD%BD%E5%AE%89%E8%A3%85 配置PicGo 插件安装 在PicGo的【插件设置】中搜索gitee-uploader插件并安装 在【图床设置】下配置Gitee repo&#xff1a;用…...

MySQL 脱敏函数使用详解:保护数据隐私的关键手段

全文目录&#xff1a; 前言前言为什么需要数据脱敏&#xff1f;MySQL 中常用的脱敏方法1. 字符串类型数据的脱敏案例&#xff1a;脱敏姓名案例&#xff1a;脱敏邮箱 2. 数字类型数据的脱敏案例&#xff1a;脱敏手机号案例&#xff1a;脱敏身份证号 3. 自定义脱敏函数自定义姓名…...

nginx之virtual host

vhost 是“virtual host”的缩写&#xff0c;中文译为“虚拟主机”。在Web服务器&#xff08;如Nginx、Apache等&#xff09;中&#xff0c;虚拟主机是指在同一台物理服务器上运行多个独立的网站或应用程序的技术。每个虚拟主机都有自己的域名、文档根目录、配置文件等&#xf…...

Windows 下纯手工打造 QT 开发环境

用过 QtCreator 和 VS QT 插件&#xff0c;都觉得不是很理想。所以有了这个想法。 手工打造的 QT 的开发环境&#xff0c;是不需要安装上面两个程序的。 1、下载 vcpkg&#xff0c;编译 QT6 下载地址&#xff1a;https://github.com/microsoft/vcpkg.git 进入到 …...

k8s的安装和部署

配置三台主机&#xff0c;分别禁用各个主机上的swap&#xff0c;并配置解析 systemctl mask swap.target swapoff -a vim /etc/fstab配置这三个主机上的主机以及harbor仓库的主机 所有主机设置docker的资源管理模式为system [rootk8s-master ~]# vim /etc/docker/daemon.json…...

第十八篇:一文说清楚ICMP的底层原理

作为程序员或者网络工程师&#xff0c;有时候无法访问对方主机&#xff1b;导致这个现象的有很多原因&#xff0c;那要排查具体的网络原因&#xff0c;可能会用到ping的指令。而ping的底层实现是互联⽹控制报⽂协议&#xff08;ICMP&#xff09;。 ICMP 全称是 Internet Contr…...

【优选算法】(第三十二篇)

目录 ⼆进制求和&#xff08;easy&#xff09; 题目解析 讲解算法原理 编写代码 字符串相乘&#xff08;medium&#xff09; 题目解析 讲解算法原理 编写代码 ⼆进制求和&#xff08;easy&#xff09; 题目解析 1.题目链接&#xff1a;. - 力扣&#xff08;LeetCode&a…...

线程(四)线程的同步——条件变量

文章目录 线程线程的同步和互斥线程同步--条件变量什么是线程同步示例--条件变量的使用示例--使用两个线程对同一个文件进行读写示例--一个读者一个写者使用条件变量来实现同步 线程 线程的同步和互斥 线程同步–条件变量 是一个宏观概念&#xff0c;在微观上包含线程的相互…...

二维数组的旋转与翻转(C++)(上(这只是简单讲解))

二维数组的旋转与翻转&#xff08;C&#xff09; 引言 在计算机科学中&#xff0c;二维数组是一种常见的数据结构&#xff0c;广泛应用于图像处理、数据挖掘、机器学习等多个领域。二维数组的旋转与翻转是处理二维数据时经常需要用到的操作。本文将详细介绍二维数组的旋转与翻…...

【在Linux世界中追寻伟大的One Piece】System V共享内存

目录 1 -> System V共享内存 1.1 -> 共享内存数据结构 1.2 -> 共享内存函数 1.2.1 -> shmget函数 1.2.2 -> shmot函数 1.2.3 -> shmdt函数 1.2.4 -> shmctl函数 1.3 -> 实例代码 2 -> System V消息队列 3 -> System V信号量 1 -> Sy…...

【大数据】Spark弹性分布式数据集RDD详细说明

文章目录 整体介绍一、定义与特性二、操作与转换三、存储级别与持久化四、依赖关系与容错机制五、优化与性能调优 常见操作支持的数据格式1.文本文件 (Text Files)2. CSV 文件3. JSON 文件4. Parquet 文件5. Sequence Files6.Hadoop文件读取A. 读取HDFS上的文本文件B. 使用Hado…...

人参玉桂膏简介

一、产品基本信息 产品名称&#xff1a;人参玉桂膏 产品类别&#xff1a;植物饮料&#xff08;专为特定体质设计&#xff09; 配料&#xff1a;精选薏苡仁、荷叶、玉米须、赤小豆等纯然植物成分&#xff0c;辅以麦芽糖醇液、低聚果糖调节口感&#xff0c;陈皮、肉桂、人参&…...

消费者Rebalance机制

优质博文&#xff1a;IT-BLOG-CN 一、消费者Rebalance机制 在Apache Kafka中&#xff0c;消费者组 Consumer Group会在以下几种情况下发生重新平衡Rebalance&#xff1a; 【1】消费者加入或离开消费者组&#xff1a; 当一个新的消费者加入消费者组或一个现有的消费者离开消费…...

消息队列介绍

一、ActiveMQ 优点&#xff1a;性能单台&#xff08;6000&#xff09;成熟&#xff0c;已经在很多公司得到应用。各种协议支持好&#xff0c;有多个语言的成熟客户端 缺点&#xff1a;性能较弱&#xff0c;缺乏大规模吞吐的场景的应用&#xff0c;有江河日下之感 二、RabbitMQ…...

告别@Value,Spring Boot 3.3更优雅的配置注入方案

在Spring Boot的早期版本中&#xff0c;我们常使用Value注解来注入配置文件中的属性值。然而&#xff0c;这种方式虽然简单直接&#xff0c;却存在一些局限&#xff0c;比如它只能注入基本类型的值&#xff0c;并且需要显式地在每个需要注入的字段上使用注解。随着Spring Boot的…...

CFS调度器:从公平算法到内核实现全景解析

1. CFS调度器的设计哲学与公平性实现 Linux内核的CFS&#xff08;Completely Fair Scheduler&#xff09;调度器诞生于2007年&#xff0c;取代了之前的O(1)调度器。它的核心设计理念可以用一个简单的比喻理解&#xff1a;想象CPU时间是一块披萨&#xff0c;CFS要确保每个进程都…...

gptree:为AI生成项目结构报告,提升代码分析与协作效率

1. 项目概述与核心价值最近在整理个人项目和代码库时&#xff0c;我遇到了一个几乎所有开发者都会头疼的问题&#xff1a;项目越做越多&#xff0c;文件夹嵌套越来越深&#xff0c;README写得再好&#xff0c;时间一久也记不清某个具体功能的实现细节藏在哪个文件的哪个角落里。…...

2026毕业论文自救指南|3个工具搞定初稿+降重+答辩PPT [特殊字符]

根据你的需求&#xff0c;我对比了目前市场上主流的毕业之家和PaperRed两款AI论文写作软件。 简单来说&#xff1a;毕业之家更像一位“全流程管家”&#xff0c;擅长从开题到答辩材料的完整生成与排版&#xff0c;尤其贴合国内高校的格式要求&#xff1b;而PaperRed则更像一位…...

终极指南:在Windows上安装安卓应用的简单解决方案

终极指南&#xff1a;在Windows上安装安卓应用的简单解决方案 【免费下载链接】APK-Installer An Android Application Installer for Windows 项目地址: https://gitcode.com/GitHub_Trending/ap/APK-Installer 你是否曾经希望在Windows电脑上直接运行手机应用&#xf…...

百考通AI实践报告:让实习沉淀有迹可循,成长答卷专业呈现

实习实践是连接理论学习与职场实战的桥梁&#xff0c;而一份逻辑清晰、内容详实的实践报告&#xff0c;既是对实习经历的系统复盘&#xff0c;也是个人成长与能力认证的重要载体。然而&#xff0c;许多学生在撰写报告时&#xff0c;常陷入思路混乱、结构松散、重点模糊的困境&a…...

AI智能体长期记忆系统:从RAG到Memory-Skill的工程实践

1. 项目概述&#xff1a;一个关于“记忆”的AI技能最近在折腾AI智能体&#xff08;Agent&#xff09;和RAG&#xff08;检索增强生成&#xff09;相关的东西&#xff0c;发现一个挺有意思的GitHub项目&#xff0c;叫memory-skill。光看名字&#xff0c;你可能会觉得这是个简单的…...

基于Agent Deck构建多智能体系统:从原理到工程实践

1. 项目概述&#xff1a;从“Agent Deck”看智能体协作平台的构建最近在GitHub上看到一个挺有意思的项目&#xff0c;叫asheshgoplani/agent-deck。光看这个名字&#xff0c;你可能会联想到一副“牌”&#xff0c;或者一个“控制台”。没错&#xff0c;这个项目的核心思想&…...

别再死记硬背了!用SPSS搞定系统聚类法,手把手教你从数据录入到谱系图解读

SPSS系统聚类法实战&#xff1a;从数据导入到商业解读的全流程指南 当你的数学建模作业截止日期临近&#xff0c;或者老板突然要求对市场调研数据进行分类分析时&#xff0c;系统聚类法往往是救命稻草。但传统教材中复杂的距离矩阵计算和迭代过程&#xff0c;常让初学者望而生畏…...

晶圆为何是圆形而芯片是方形?揭秘半导体制造的工程智慧

1. 项目概述&#xff1a;一个看似简单却充满工程智慧的谜题“为什么晶圆是圆的&#xff0c;而芯片是方的&#xff1f;” 这个问题&#xff0c;乍一听像是半导体行业里一个有趣的脑筋急转弯&#xff0c;但它背后却串联起了从材料科学、物理化学到精密制造、经济学乃至数学几何的…...

3大创新突破:APK Installer如何重新定义Windows上的Android应用体验

3大创新突破&#xff1a;APK Installer如何重新定义Windows上的Android应用体验 【免费下载链接】APK-Installer An Android Application Installer for Windows 项目地址: https://gitcode.com/GitHub_Trending/ap/APK-Installer 在当今跨平台应用需求日益增长的背景下…...