关于Qt中头文件的翻译问题
2013-09-16 19:47
357 查看
最近整QT的翻译,发现在头文件中的tr("XXXX")是没有办法正常翻译的,经过仔细研究之后发现原来是我放在头文件中的tr("XXX")设置为了static 导致的,这里咱们说说QT的翻译原理,QT的翻译原理是动态的,在使用之前是需要设置编码格式的,中国的不用说了一般都是GBK或者是GB18030,由于静态变量在程序编译的时候就已经分配好了所以根本没有机会能在setTextCodecForTr()之后进行正常的翻译操作。所以,这个时候咱们如果涉及到需要翻译的文本问题的话,有两个解决的方案:
1.使用Unicode的方式,这个咱们可以参考QT中UI是怎么来进行翻译的,QT中的ui_XXX.h文件采用的就是QApplication::translate()来进行翻译的,但是这个咱们需要知道其Unicode的编码的十六进制。
2.只能是将QObject::tr()的东西移动到非静态成员。
1.使用Unicode的方式,这个咱们可以参考QT中UI是怎么来进行翻译的,QT中的ui_XXX.h文件采用的就是QApplication::translate()来进行翻译的,但是这个咱们需要知道其Unicode的编码的十六进制。
2.只能是将QObject::tr()的东西移动到非静态成员。
相关文章推荐
- 关于Qt中的翻译问题
- 关于Qt中翻译不对的问题
- 关于Qt翻译在Vs编辑器上面出现乱码问题
- Qt国际化(3)——一些提示 Qt翻译问题
- QT中关于获得窗口尺寸的问题
- 关于mac中Qt5.7编译出现的问题
- 关于Qt 信号与槽自动连接 qPushbutton按钮无法点击的问题
- 关于QT4数据动态显示的问题
- 关于Qt编译时问题的一个非常奇怪的解决方法
- Qt语言家使用问题:在语言家翻译了,但程序起来翻译就是不起作用
- 关于Qt加载jpg问题
- Qt关于按键长按的问题
- 关于QT中中文乱码以及显示常量中有换行符的问题
- 关于QT的QProcess运行外部程序的问题
- 关于Qt5.4.0的中文翻译不“完整”的解决方法
- QT中关于获得窗口尺寸的问题
- qt中关于中文乱码的问题
- 关于linux下Qt5.7.0安装中文输入法无法显示的问题
- 关于QT的 常量中有换行符 的问题
- 关于Qt使用windeployqt发布相关问题解决办法--个人整理