QT在英文系统下乱码问题

我的QT环境:

源代码的字符集:gb18030

QT的项目文件pro的字符集:CODECFORTR = GB18030

在英文系统上显示乱码

原因:英文系统上如果要显示中文,可以通过加载QTplugins下的插件来进行解码,所以要想在英文系统上正确显示中文就只能是通过unicode编码了,

解决方案:

1.我采用的是utf8编码,我没有修改源代码的字符集,而是将所以由tr()包封的字符串通过uic工具,在designer下将其转换为utf8的字符串。

2.使用翻译的时候,将pro文件的字符集修改为:CODECFORTR = UTF8

3.在程序中setCodecForTr(Codec::forName("UTF-8")

通过这样,也就是采用UI翻译的方式能让中文正确在英文系统下进行显示

解决方案2:

在使用tr的时候使用英文,这样在编码上就不会有什么问题了,然后翻译的时候将其翻译为中文来进行显示

QT在英文系统下乱码问题

时间: 2024-10-18 11:38:18

QT在英文系统下乱码问题的相关文章

如何解决英文系统下安装中文软件显示乱码问题?

如何解决英文系统下安装中文软件显示乱码问题? ?Lander Zhang 专注外企按需IT运维服务,IT Helpdesk 实战培训践行者博客:https://blog.51cto.com/landerIT Helpdesk 工程师实战培训课程:https://edu.51cto.com/lecturer/733218.html轻松进外企:IT Helpdesk工程师实战自学之路:https://blog.51cto.com/lander/2413018更新时间:2019/10/28 故障描述

QT在linux环境下读取和设置系统时间(通过system来直接调用Linux命令,注意权限问题)

QT在Linux环境下读取和设置系统时间 本文博客链接:http://blog.csdn.NET/jdh99,作者:jdh,转载请注明. 环境: 主机:Fedora12 开发软件:QT 读取系统时间 [cpp] view plain copy void moreidDialog::refresh_time() { QDateTime time; txt_time->setText(time.currentDateTime().toString("yyyy") + ".&

mac系统下为emacs设置中文字体,解决乱码问题

最近换了个系统,现在用mac系统. 当打开emacs后,中文支持的不是很好.有的地方能显示,在.el文件的注释里显示为口口口口口口口口这样的框,如下图所示 找了半天,是因为中文字体的问题,只要设置好中文字体就行了. 以前在Linux下中文就支持的很好,不用配制中文字体就能显示. 配制代码如下(将其放到.emacs文件或init.el里就OK): ;; -------------------------------------------------------------------------

CentOS系统下中文文件名乱码

原文来自:http://www.zhukun.net/archives/7434 CentOS系统下中文文件名乱码 2014/09/01Linux运维centos.Linuxbear 从windows上传到linux的文件或者目录,在Linux系统中显示为乱码.虽然将Linux的env设置了LANG=en_US.UTF-8,并且本地的Shell客户端编码也设置成UTF-8,但在Shell中(或通过http访问),仍是乱码…… 原因在于,Windows 的文件名中文编码默认为GBK,压缩或者上传后

Mac平台下的Qt程序在Windows下执行编译运行出现的中文乱码问题

Mac平台下的Qt程序在Windows下执行编译运行时,QString::asprintf()部分会出现的中文乱码问题,之前已经使用QStringLiteral宏解决了一个中文乱码问题: 但是此种情形单凭QStringLiteral宏解决不了. 原因: mac下采用MinGW编译,在Windows下可能是MinGW,也可能是MSV2017等VS编译器编译.如果win平台下是MinGW编译,在mac下写好的程序在win平台下运行不会出现乱码: 如果win下是MSV2017编译就会出现中文乱码,需要

【Qt编程】系统托盘的显示

本文主要讨论Qt中的系统托盘的设置.系统托盘想必大家都不陌生,最常用的就是QQ.系统托盘以简单.小巧的形式能让人们较快的打开软件.废话不多说,下面开始具体介绍. 首先,新建一个Qt Gui项目,类型选择QMainWindow,类名也选择默认的mainwindow.这时,工程项目中就有3个文件(界面文件不用管):mainwindow.h mainwindow.cpp main.cpp.然后,分别修改3个文件如下: 1.mainwindow.h #ifndef MAINWINDOW_H #defin

linux系统下,11款常见远程桌面控制软件

linux系统下,11款常见远程桌面控制软件 一. Grdc 它是一个用GTK+编写的,适用于gnome桌面环境的远程桌面访问软件.看图: 常见功能: 1.提供全屏,窗口化的远程控制.支持高分辨率下的窗口显示以及调整. 2.可浮动的工具栏 3.可抓取键盘 4.支持建立一个“常用访问列表” 5.连接快速,高效 6.全屏模式下,当鼠标划过屏幕边缘时自动滚动 7.全屏模式下工具栏同样支持浮动效果,可直接进行例如模式切换,键盘抓取最小化等常见操作. 8. rdesktop 支持RDP协议, 9. 支持

Linux系统下如何查看已经登录用户

Linux系统下如何查看已经登录用户 虽然前面介绍了用户管理,但是那部分主要是管理用户的帐号,也就静态的用户列表.而LINUX是个多用户系统,一旦连接到网络中,它可以同时为多个登录用户提供服务.系统管理员可以随时了解系统中有那些用户,用户都在进行什么操作. 查看用户的操作 系统管理员若想知道某一时刻用户的行为,只需要输入命令W 即可,在SHELL终端中输入如下命令: [[email protected] ROOT] # W2:31PM UP 11 DAY ,21:18 4 USERS, LODE

Windows系统下安装VirtualBox,系统找不到指定路径的做法

在虚拟机软件中,VMware.Virtual PC等都不支持目前Windows 8各版本的安装.无奈之下,只剩下一个选择——VitualBox. 但是很多朋友在下载VitualBox之后,在Windows 7下安装碰到了问题(Windows Vista.Windows XP系统也一样),他会弹出一个对话框“Installation failed! Error: 系统找不到指定的路径.”(一些较早期的VitualBox会显示为“Installation failed!ERROR:3”) 这个问题产