最近在总结pyqt5相关的一些知识,现在针对pyqt5实现多语言,这边出一个简略的教程,以我项目中的一个视频播放的组件为例,给大家简述以下他的实现流程。
第一步:我们在QT Designer中的视图中把我们的文本设置为为一个变量,我这里的变量是please_click_left,如下图所示:
第二步:在项目中通过pyui,把我们的.ui文件转换为.py文件,使得可在python的环境下使用,如下图所示:
第三步:新建一个源列表清单文件,我这里命名是transSources.txt (需要做多语言的python文件列表),通过pylupdate5.exe,转化你需要的ts文件,如下图所示:
第四步:用一个工具打开ts文件进行配置语言,这是pyqt5中内置的工具linguist.exe,可以添加为一个扩展工具,操作如下图所示:
在external tools里面去添加一个扩张工具,名字可以任意取,我这里叫linguist吧,然后在你的虚拟环境中找到venv\Lib\site-packages\qt5_applications\Qt\bin\linguist.exe,然后配置:
然后,你在文件下面,鼠标点击右键就会出现这个扩展工具,然后点击打开linguist工具
多选打开两个ts文件,两个文件设置需要转换成的语言,我这里选了中文和英文:
我项目中有很多模块,我这里案例是说video组件的,我就和你们说video,这里组件名字个视图中的命名是对应的,如下图所示:
第五步 翻译
这时我们与需要点击翻译确认就是把相应?号打勾,表示确认,然后点击file>release all转换我为.qm文件可在python环境下使用:
第五步 在客户端应用语言,框出来为主要代码:
第六步 在代码上应用语言,主要代码: