Qt国际化静态翻译(Visual Studio + Qt插件)
发布时间
阅读量:
阅读量
静态翻译流程
一、在cpp中将待翻译字段使用tr()
> 1. labTotal->setText(QString(tr("Total:%1")).arg(rows));
>
> 2. QMenu* pMenuHelp = new QMenu(tr("Help"));
>
> 3. QMenu* pMenuLanguage = new QMenu(tr("Language"));
>
>
>
>
> cpp
>
>
二、生成pro文件

三、在 pro 中加上 TRANSLATIONS
在 Pro 环境中配置 TRANSLATIONS 设置,请使用以下命令添加新的 translations 文件:
TRANSLATIONS += trans_zh_CN.ts。你可以根据需求添加多个 translations文件,并确保每个 translations文件对应生成相应的.ts 文件。
TRANSLATIONS += qrc/language/en_CN.ts\
qrc/language/zh_CN.ts
cpp
四、生成ts文件

五、打开Liguist进行翻译并生成 qm文件
1、翻译未翻译项,并确认

2、保存当前翻译

3、发布生成qm文件

六、加载qm文件到进程中

国际化多语言翻译知识点
翻译非Qt类
如果一个字符串类型的类想实现国际化功能,则该类必须继承自QObject基类或使用Q_OBJECT宏进行扩展。而对于非Qt框架类来说,则需要通过在类定义前声明Q_DECLARE_TR_FUNCTIONS宏来实现其翻译功能。
class MyClass
{
Q_DECLARE_TR_FUNCTIONS(MyClass)
public:
MyClass();
...
}
cpp
tr 多个相同的源内容需要翻译成不同的 目标翻译

程序安装qm文件

全部评论 (0)
还没有任何评论哟~
