QT语言家支持多种语言功能,在QGC中也很好的使用了该功能,下面对该功能是一些理解进行整理。

首先在QGC使用语言家功能中分为qml文件和.c文件,两种略有不同。

  1. 在.c文件中使用tr()将需要翻译的内容进行包裹

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

下面以新建qml文件进行举例

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

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

  1. qml文件添加完成后,编译QGC项目,编译完成后此时QGC对应的前端显示应该是英文的。

  1. 使用预言家更新

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

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

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

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

至此,关于在QGC中使用语言家功能使用的个人理解总结完毕,如果有理解错误的地方望大神指教


版权声明:本文为nieji3057原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/nieji3057/article/details/128565232