• Qt 乱码


     个人认识:

          乱码的原因:

                     在编写代码时--》文件的格式---》编译器对文件进行编译的时候看到的只是二进制(乱码就出现在这里)

                              应合适方法 通知编译器(为什么说通知编译器呢?因为个人觉得这样好理解)使用的 字符串编码。这样在显示的时候就不会乱码了。

        在QT5中,编写的代码格式若用utf-8保存,中文显示不会乱码。

                      但若用GBK或GB2312时候会乱码。。因此需通知编译器我的编码格式。

                      众所周知,汉字,占两个字节,8位。。

                     因此在使用汉字时加上:QString::fromLocal8Bit("我是中文");

        另一种解决方法个人比较推荐的,就是用tr(“english” )  通过汉化来显示为中文:

                   这里简单的说一下汉化过程:

                              所有需要汉化的字符串用tr(" ");包裹(用词不当但好理解)

                              若使用Qt creator 则在.pro文件假如一下代码:

                                           TRANSLATOR=XXX.ts  (若就一个  可省略)

                                                                 XXX2.ts

                                          几种语言版本就加几个.ts 一般加一个中文版的就好

                              然后对项目进行编译;

                              使用lupdate xxx.pro   生成xxx.ts文件

                              用linguist打开.ts文件,设置英文对应的汉语,保存 并 lrelease 发布 生成.qm文件

                               

                              如何使用.qm文件呢?

                                                   把qm文件加入到项目资源(非必须,可用绝对路径,但放到资源里比较好用呀)

                               使用QTranslator 对象进行load();加载

                               在用QApplication 对象进行installTranslator(translator); 安装

                             很形象的过程:翻译,发布,加载,安装

                                 

  • 相关阅读:
    hibernate怎么做分页
    JS+CSS带数字和左右按钮可控制切换的图片幻灯
    AOP下的权限控制实现
    Hibernate3和MyBatis(iBatis)的执行效率比较
    CKEditor/FCKEditor 使用-CKeditor 3.0.1 快速教程(含插入图片)
    用JS写CSS
    spring aop实现权限控制,路径控制
    sql server 同步复制要点
    千万别把自己当人才
    web.xml元素介绍
  • 原文地址:https://www.cnblogs.com/infoo/p/6652914.html
Copyright © 2020-2023  润新知