qt c++ 图片预览_Qt多语言国际化

c82588eea5e344b51f0971cf67873328.png

Qt附加工具介绍

  • Qt Assistant(Qt助手)
  • Qt Linguist(Qt语言家)
  • Qt Designer(Qt设计师)

Qt Assistant

Qt Assistant是可配置且可重新发布的文档阅读器,可以方便地进行定制并与Qt应用程序一起重新发布。Qt Assistant已经被整合进Qt Creator,就是前面介绍的Qt帮助。

选中关键词后按F1查看文档阅读器

Qt Designer

Qt Designer是强大的跨平台GUI布局和格式构建器。由于使用了与应用程序中将要使用的相同的部件,可以使用屏幕上的格式快速设计、创建部件以及对话框。使用Qt Designer创建的界面样式功能齐全并可以进行预览,这样就可确保其外观完全符合要求 。

shift+Alt+R进行预览

Qt Linguist

Qt Linguist 提供了一套加速应用程序翻译和国际化的工具。Qt 使用单一的源码树和单一的应用程序二进制包就可同时支持多个语言和书写系统。

第一个Qt程序

新建项目

2b8dc4adbd57508fe389541e204f659f.png

63f27dfc6e358d6f7a68064734e3ae4a.png

94843e0d5852f5df8f1a146a15abf45f.png

d68d5ed7b6bf9a50b576ee12e7a4a4f0.png

5c799c48894edec3e9382248b2a6a9dd.png

8679dc13219a574a2fca252afce01e7b.png

新建完项目之后可以左下角的锤子构建项目,然后点击绿色三角标志运行程序

基于qt语言家的语言切换

❝Assistant(Qt语言家),类似于MSDN最权威的速应用程序翻译和国际化的工具。Qt 使用单一的源码树 和单一的应用程序二进制包就可同时支持多个语言和书写系统,有助于软件走向国际化,普度众生。

具体步骤:

  1. 生成.ts文件,lupdate
  2. 翻译成制定语言,生成.qm文件,lrelease。
  3. 加载qm文件,load()
  4. install

效果呈现

中文:

92a460de81acbc648e562a887f204a1d.png

英文:

ff6aa27415a588b65f77cdde92dcf283.png

UI设计

64bf5b4ebed5970efb2cce3b6aede180.png

拖动Lable控件和日历控件到界面

4e0b19c2e6cc447c7de59205f79688f1.png

双击Lable控件修改名字,设置字体以及字体大小

cc449478bb48dd2e1ab84f4e7fc11806.png

双击菜单栏添加一级菜单,二级菜单无法直接输入中文,在属性里面修改

多语言

step1:pro文件底部添加对翻译的支持

TRANSLATIONS = Translate_EN.ts 
Translate_CN.ts

step2:生成.ts文件

4917aa819eb4ead88c1720520a32d7ea.png

step3:使用qt语言家翻译ts文件

将Translate_CN.ts文件用Qt Linguist打开 汉语­(一般不用改,我们使用的是汉语,只需要改汉译英的)

14f26c430b522f8965f7fb5a81206a21.png

12a8431d853889ceaea809558b5b0bd1.png

Translate_EN.ts

汉语­>英语

6545e3049f21522edc1383699c352f50.png

step4:生成.qm

795ceb545ebb322c611acd60ab248d80.png

step5:加载qm文件

定义QTranslator对象(类内定义)

QTranslator *m_Translator;

分配对象(构造中分配)

m_Translator = new QTranslator(this);

设置菜单响应

e22ca9788a7e69a7968ecafe441b2cc7.png

选择默认的trigered()即可,信号与槽后面介绍,按步骤来就行

切换英文

m_Translator‐>load("Translate_EN.qm");

切换中文

m_Translator->load("Translate_CN.qm");

step6:安装qm文件

qApp‐>installTranslator(m_Translator);

问题:日历还没有修改

ui‐>calendarWidget‐>setLocale(QLocale::Chinese);	//设置日历英文
ui‐>calendarWidget‐>setLocale(QLocale::C);			//设置日历中文

注意事项:

3c410a3382b33f91648c3531c008b396.png

如果加载不成功,说明路径错了,QtCreator生成的.qm文件是在.pro目录下,需要移至debug目录下,才能正确读取.qm文件,实现语言的切换

源代码github地址:

https://github.com/ADeRoy/Qt_Demo.git​github.com
微信公众号【编程学习基地】,期待你的关注

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

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

相关文章

Icon+启动图尺寸

1、LaunchImage 启动图 命名格式: 1x -> xxx.png 2x -> xxx2x.png Retina 4 -> xxx2x.png     转载于:https://www.cnblogs.com/z-z-z/p/7828082.html

智商情商哪个重要_《所谓逆商高,就是心态好》:逆商,比情商和智商更重要...

所谓“逆商”,是指人们遇到逆境时的应对能力,即战胜挫折、摆脱困境和超越困难的能力。我们一生会面临各种各样的难题,也许是考试失利,也许是和心爱的人分离,也许是工作上竞争失败……在失意的时候你会做何选择&#xf…

mysql 排名_学会在MySQL中实现Rank高级排名函数,所有取前几名问题全部解决.

MySQL中没有Rank排名函数,当我们需要查询排名时,只能使用MySQL数据库中的基本查询语句来查询普通排名。尽管如此,可不要小瞧基础而简单的查询语句,我们可以利用其来达到Rank函数一样的高级排名效果。在这里我用一个简单例子来实现…

__getattr__动态获取接口

# -*- coding:utf-8 -*- #在看廖雪峰的python3.5教学时,看到面向对象高级编程_定义类 https://www.liaoxuefeng.com/wiki/0014316089557264a6b348958f449949df42a6d3a2e542c000/0014319098638265527beb24f7840aa97de564ccc7f20f6000 百度了很久没有找到想要的答案&a…

意大利_【解读】去意大利留学,一定要学意大利语吗?意大利语难吗?

喜欢意大利,想去意大利留学,但不想学意大利语可以吗?意大利语太难了,听说有英授专业(本来就要学英语、考雅思所以不担心英语)……问题来了去意大利留学,选择英授专业的话还需要学意大利语吗?我们一点点剖析…

MD5、SHA1、SHA256的简单讲解

简述: 最近在研究系统以及驱动,当下载比较大的文件时总会提供SHA1或者SHA256,下载结束后使用校验工具得到的值与它进行比对来判断下载是否成功。 使用工具校验 certutil -hashfile 文件名 sha1/sha256/md5正文: MD5、SHA1、SHA256这些都被称为 哈希…

java swarm集群_52个Java程序员不可或缺的 Docker 工具

Docker工具分类列表编排和调度持续集成/持续部署(CI / CD)监控记录安全存储/卷管理联网服务发现构建管理编排和调度 1. KubernetesKubernetes是市场上最实用的最受欢迎的容器编排引擎。最初作为一个Google项目开始,成千上万的团队使用它来部署生产中的容器。谷歌声称…

centos7.4安装nginx1.8.1 php7.7.11 安装 MySQL5.7.20

解决依赖关系 yum -y install gcc pcre pcre-devel zlib zlib-devel openssl openssl-devel nginx源码下载地址 http://nginx.org/download/ 解压 tar -zxvf nginx-1.8.1.tar.gz 进入目录 cd nginx-1.8.1 检测配置 ./configure --prefix/usr/local/nginx --sbin-path/usr/bin/n…

comsol显示电场计算结果_在 COMSOL 中构建磁流体动力学多物理场模型

COMSOL Multiphysics 软件中的模型都是从零开始构建的,软件支持多物理场,因此用户可以按照自己的意愿轻松地组合代表不同物理场现象的模型。有时这可以通过使用软件的内置功能来实现,但有些情况下,用户需要做一些额外的工作。我们…

数据挖掘初次接触!学习代码

import pandas as pd import numpy as np from time import timedatapd.read_csv("dankuan.csv",sep;,index_col0) #打开表 data.head() #查看前几行的数据,默认前5行 data.describe() #数据的快速统计汇总 data.g4_term_type.value_counts() data2data.fillna(value…

心率过100怎么处理_心跳每分钟超过100次,为何血压很正常?心跳太快该怎么办?...

在人们的心中一个人要是心跳速度很快,那么就意味着血压升高了。大家也知道正常情况下,每分钟心跳在55下到100下之间,都是正常情况。不过,现在有很多人心跳虽然很快,每分钟都超过100次了,但是一检查血压还是…

python卷子_Python试卷

3、写一个函数&#xff0c;计算一个给定的日期是该年的第几天。def getday(self,yNone,mNone,dNone):date datetime(y,m,d)days date.strftime(%j)return days4、写一个函数&#xff0c;给定N&#xff0c;返回斐波那契数列第N项。def getn_vlaue(self,n):if n<2:return 1e…

JS日期选择器

<html><head><title>JS日期选择器</title><script type"text/JavaScript">function HS_DateAdd(interval, number, date) {number parseInt(number);if (typeof (date) "string") {var date new Date(date.split("-…

微运行库2015_vc++2015运行库下载_vc++2015运行库64位官方下载「vc2015」-太平洋下载中心...

常见问答&#xff1a;(1)win10安装vc2015提示错误0x80070666如何解决&#xff1f;步骤&#xff1a;前提需要通过程序和功能 将旧版的vc 卸载1、首先下载"VC6.0垃圾文件清理工具"&#xff1b;2、将下载的到压缩包解压出来&#xff1b;3、打开文件夹&#xff0c;在Copy…

python爬silverlight_Python创建Silverlight控件编写过程经验分享

Python编程语言可以帮助我们实现哪些功能呢&#xff1f;它的主要应用范围都包括哪些呢&#xff1f;我们今天先来了解一下有关Python创建Silverlight控件的相关实现方法&#xff0c;以此来初步熟悉一下这一语言的应用方式以及功能特点。其实关注Silverlight很久了&#xff0c;只…

RGB转LAB色彩空间

https://www.cnblogs.com/hrlnw/p/4126017.html 1.原理 RGB无法直接转换成LAB&#xff0c;需要先转换成XYZ再转换成LAB&#xff0c;即&#xff1a;RGB——XYZ——LAB 因此转换公式分两部分&#xff1a; &#xff08;1&#xff09;RGB转XYZ 假设r,g,b为像素三个通道&#xff0c;…

fileitem方法_FileItem的常用方法

下面介绍FileItem类中的几个常用的方法&#xff1a;1. isFormField方法isFormField方法用于判断FileItem类对象封装的数据是否属于一个普通表单字段&#xff0c;还是属于一个文件表单字段&#xff0c;如果是普通表单字段则返回true&#xff0c;否则返回false。该方法的完整语法…

python hack库_常用的Python库

Tkinter———— Python默认的图形界面接口。Tkinter是一个和Tk接口的Python模块&#xff0c;Tkinter库提供了对Tk API的接口&#xff0c;它属于Tcl/Tk的GUI工具组。Tcl/Tk是由John Ousterhout发展的书写和图形设备。Tcl(工具命令语言)是个宏语言&#xff0c;用于简化shell下复…

Java异常介绍及Spring Boot统一异常处理

1. 异常介绍 Java异常处理是Java编程语言中用于处理程序运行时出现的异常情况的一种机制。异常情况指的是程序运行过程中出现的非正常情况&#xff0c;比如除以零、数组越界、空指针访问等。Java异常处理机制可以帮助程序员更好地管理这些异常情况&#xff0c;保证程序的稳定性…

React- jsx的使用可以渲染html标签 或React组件

React 的 JSX 使用大、小写的约定来区分本地组件的类和 HTML 标签。既渲染html标签需要使用小写字母开头的标签名而渲染本地React组件需要使用大写字母开头的标签名 注意: 由于 JSX 就是 JavaScript&#xff0c;一些标识符像 class 和 for 不建议作为 XML 属性名。作为替代&…