qt版本:5.14.1
qtCreator版本:4.11.1
硬件:thinkpad T590
系统:win10
先打开qtCreator,新建一个Qt Widgets Applicatin项目,如下:
取名TransLanguage,如下:
一直点下一步,然后构建方式我选择的是MSVC2017 64bit,如下:
创建完成后如下:
双击mainwindow.ui,打开主界面mainwindow.ui的编辑界面,如下:
从左边选一个combobox到右边,然后右击这个控件,选择编辑项目,添加“中文”和“英文”选项,如下:
然后界面上添加一个label,
回到mainwindow.cpp文件,在构造函数中添加如下代码:
ui->label->setGeometry(ui->label->x(),ui->label->y(),200,50);ui->label->setText(tr("这是一句待翻译的话"));
这样我们的软件里面就有待翻译的文字了。
接下来就是如何使用qt语言专家了:
双击TransLanguage.pro文件,添加如下代码:
TRANSLATIONS += lang_Chinese.ts\lang_Englich.ts
接下来选择工具-外部-Qt语言专家-更新翻译,如下:
更新翻译之后,项目所在目录下就多了两个文件:lang_Chinese.ts和lang_English.ts,如下:
接着打开QT语言专家程序Linguist5.14.2(MSVC2017-64-bit)
在程序中打开刚的lang_Chinese.ts和lang_Englich.ts两个文件,如下:
然后会跳出针对两种语言的设置,如下:
然后给每一个字符串设置翻译后的语言文字,如下:
然后选择 文件-发布全部,如下:
发布之后,可以看到项目文件目录下多了两个文件,lang_Chinese.qm和lang_Englich.qm,接下来就是在代码里使用这两个文件了。回到QtCreator界面,右击项目——Add new——选择Qt Resource File创建资源文件,取名Res,如下
可以看到左侧导航栏多了Resource文件夹和其下方的Res.qrc文件,右击Res.qrc——添加现有文件——选中lang_Chinese.qm,lang_Englich.qm文件,如下:
然后双击导航栏的mainwindow.ui文件,跳转到主界面编辑窗口,右击界面上的combobox控件——转到槽,如下:
在跳出的窗口选择currentindexChange(int),如下:
然后会自动跳转到mainwindow.cpp文件,添加如下代码:
然后按F5运行就能看到本文开头的效果。