QT 程序 国际化 操作, Qt 本身支持多语言,尤其是多文件切换特别方便,使用ts文件即可,下面介绍基本使用方式,如下操作是基于VS2013 并且已安装 QT VS TOOLS 插件,展示中文的 翻译 操作 二.使用步骤 1.添加 翻译 文件 点击VS项目名称----》右键----》CreaeNew Translation File --->选择创建中文的 会生成 项目名称_zh.ts 在项目目录下 2.使用 翻译 文件 2.1. Qt 语言家工具 的使用 双击VS项目列表下的 项目名称... 有的软件需要根据用户的设置来切换显示的语言, Qt 提供了一套用于Internationalization 的机制来帮助我们实现语言切换。 大致的流程:首先用 l update 工具根据源码中标记的字符串生成ts 文件,然后通过Linguist( Qt 语言家)工具进行编辑,再用 lrelease 工具发布qm 翻译 文件,最后代码中加载这个 qm 翻译 文件。其中 l update /lrelease 工具的使用已经集成到 Qt Creator 和 Linguist,可以快速地生成相应的文件。 操作流.... 第一种:利用 QCoreApplication::tr() 函数 第二种:利用 QCoreApplication::translate() 函数 第三种:利用 QCoreApplication 类的 Q_DECLARE_T... Qt 翻译 分为三步:         1.运行l update ,从应用程序中提取所有经tr()标识过的字符串。生成一个后缀为*.ts的文件。         2.使用 Qt Linguist 翻译 这个*.ts。然后用其生成*.qm。         3.在应用程序中用 QT ranslator这个类加载*.qm文件。         要用lupd   我在用 Qt 语言家 更新 翻译 (l update ) 翻译 语言包的时候,点击运行后直接没有反应了,一开始以为任务崩溃了,但是查看后台进程l update 还存在,而且cpu占用率比较高,感觉像是一直在 翻译 翻译 不过来了,哈哈。最后经过Google查找,发现了端倪,参考了这个帖子 https://stackoverflow.com/questions/40471662/ update -translation-file-using-boost-library- qt -c。   帖子上面说了引用三方库boost导致了该问题,巧 1、用一个函数用来设置控件的文本信息,我这里用了一个FunSetText()函数封装,并且文本信息用tr(“”);如QPushButton p要设置文本 p->setText(tr("Info")); //用tr("")设置,这是重点,不这样设置到时候 翻译 的时候识别不出来 2、pro文件中添加 ,添加这个语句之后 TRANSLATIONS = English.ts Chinese.ts 3、点击 Qt 工程中的 更新 翻译 ,如下图所示, 更新 翻译 之后,在你的当前