QT语言家支持多种语言功能,在QGC中也很好的使用了该功能,下面对该功能是一些理解进行整理。
首先在QGC使用语言家功能中分为qml文件和.c文件,两种略有不同。
-
在.c文件中使用tr()将需要翻译的内容进行包裹

-
在qml文件中使用qsTr()进行包裹

下面以新建qml文件进行举例
-
新建qml文件,新建以后需要在qgroundcontrol.qrc中手动修改(可以不改)。如下图所示添加文件后手动重命名修改添加上文件的路径,然后在别名出添加文件名称。好像不该也不影响使用,为了和QGC保持一致强迫症改了一下。


-
在qml中添加需要翻译的内容

-
qml文件添加完成后,编译QGC项目,编译完成后此时QGC对应的前端显示应该是英文的。
-
使用预言家更新

-
更新完成后打开qgc_zh_CN.ts文件,应为是需要翻译成中文所以打开这个文件。打开后通过搜索你会发现已经自动添加了qml对应的翻译内容,需要自己手动修改翻译部分。下图是修改完之后的。

-
在使用预言家发布一下,这一步是生成对应的.qm文件,好像不发布也不影响QGC使用。完成之后再编译运行QGC发现qml对应的英文已经翻译为了中文。

语言家的功能需要在.pro文件中添加.ts文件加载程序,在QGC中程序中已经添加好了,不用自己再弄。

另外还可以使用QT的Lingguist工具查看.ts文件,并对文件进行修改


至此,关于在QGC中使用语言家功能使用的个人理解总结完毕,如果有理解错误的地方望大神指教
版权声明:本文为nieji3057原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。