Qt嵌入式多语言的同时问题,怎么解决

Qt嵌入式多语言的同时问题,怎么解决,第1张

引言:目前,Qt作为图形开发软件闹冲使用的人群越来越多,很多公司的产品有多国语言支持的需求,笔者就教学与项目开发中的经历,小结了Qt多国语言(国际化)液皮歼问题,仅供参考。

假设我们已经建好一个工程,且可以运行握敬出基本的界面。

1、打开项目工程文件QTDemo.pro,添加如下语句:

TRANSLATIONS += en.ts zh_CN.ts zh_TW.ts

2、然后在命令行窗口中输入以下命令:

lupdate QTDemo.pro

这样就生成了3个语言文件:en.ts,zh_CN.ts,zh_TW.ts

3、用linguist(在QT安装目录下的bin目录中)打开zh_CN.ts(简体中文),选择“编辑”->“翻译文件设置…”,选择Chinese/China:选中某一个字符串,在译文文本框

中输入对应于中文的字符串:

同理,进行zh_TW.ts(繁体中文)文件的翻译,en.ts(英文)文件不用翻译。

4、用 lrelease QTDemo.pro 将对应的.ts文件生成.qm文件,.qm文件比较紧凑、体积小。

5、在程序中添加对国际化的支持,将main.cpp修改为如下内容:

#include <QApplication>

#include <QTranslator>

#include "QtDemo.h"

int main(int argc, char **argv)

{

QApplication app(argc, argv)

//以下3句话是装载的程序

QTranslator translator

translator.load(QString(argv[1]))

app.installTranslator(&translator)

QtDemo *dlg = new QtDemo

dlg->show()

return app.exec()

}

重新执行make命令,生成可执行程序。

在运行程序时通过传递命令行参数指定所使用的语言,注意不需要指定扩展名.qm,例如:

./QTDemo zh_CN 就出现中文的界面了,其他的依次类推。

add new,选择模笑茄辩板的时候选择c++,然纳如后选碰缺择c++ SourceFile

这样建立一个.cpp 文件,但你可以完全按照c语言的方式来处理。

qt不简单,但是qt的帮助文件几乎是最好的帮助文件。

private slot是qt自定义的关键字,能够被qt的moc处理成标准的c++代码,是所谓的槽函数,灶指能够被Signal激发时,自动被调用。

按你的要求,qt的model/View框架非常适合。至于代码,你可以看qt的巧悔帮助文件。

不过再好的帮助文件,它也是英文的,建议你买一本qt书籍来看,qt4的中文书很多,qt5貌似还没有,不过对于桌面,qt4的东隐宽配西和qt5差不多。学过C++,了解下MFC等等GUI的基本原理,学习qt非常容易。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/12239863.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-22
下一篇 2023-05-22

发表评论

登录后才能评论

评论列表(0条)

保存