PyQt5 使用 Qt Linguist 完成语言转换功能,知识点与实例(例子是中英文翻译)
前言
大概思路是做一个Language工具栏选项,通过点击选项实现中英文界面切换,具体用到了Qt Linguist.exe,工具栏创建与功能连接,下面将详细介绍。
QT Linguist官方例子https://doc.qt.io/qt-5/examples-linguist.html,共有三个例子。
这篇文章写了太多的官方文档介绍,不需要的可以直接跳到创建完整项目的步骤。
Qt Linguist介绍
QT为Qt C++和Qt Quick提供了专用的快捷开发语言翻译的应用,使得权限管理者,翻译者,开发者可以用Qt tools来完成他们的工作。
权限管理者 承担着管理所有应用权限的责任,比如说,调配开发者跟翻译者的工作,还可以用已发布的应用,lupdate tool来同步源代码跟翻译后的,还可以用lrelease tool来创建一个运行时的翻译文件(我理解为语言包)。
翻译者 可以使用Qt Linguist 工具来在应用中翻译文本。不需要计算机知识,只需要你会启动项目,会用文本编辑器。
开发者必须创建可以使用被翻译过的文本的Qt应用。应当帮助译者识别短语出现的上下文。开发人员可以使用教程了解他们的任务。
(虽然官方文档这么说,但是我们应当知道,三个角色一般来说都是程序员扮演的)
QT Linguist 包含在pyqt5-tools中一并安装上了(安装在前一篇文章)。一般在Python文件夹 目录下
venv\Lib\site-packages\pyqt5_tools\Qt\bin
可以找到QT Linguist.exe运行程序。
Qt Linguist提供了多种语言支持,但是没有增加很多开发者的工作
Qt通过只在程序创建的时候,使用翻译者翻译短句,实现对程序的最小开支。在大多数情况下,主窗口只创建一遍,一旦窗口初始化的时候完成翻译,根据需要来选择显示还是隐藏,只有在窗口被创建,销毁的时候才需要翻译者。
创建一个完整项目
主窗口文件MainWin.py UI界面文件test_ui.py
1. 使用Qtdesigner创建ui界面
(在我的文章初探在Pycharm中使用QT开发GUI页面,组件安装配置以及一个完整项目中有详细介绍)

一个label ,两个按钮,实现点击 English按钮 出现英文,点击 简体中文 按钮将其切换为英文,保存为.ui文件,并转换为.py文件
pyuic5 -o test_ui.py test_ui.ui
2.写入主界面逻辑
引入ui格式,建立app窗口
import sys
from PyQt5.QtWidgets import QMainWindow,QApplication
from test_ui import *
class MyMainForm(QMainWindow,Ui_Form

本文详细介绍如何使用PyQt5和QtLinguist实现应用程序的多语言切换功能,包括创建UI界面、编写逻辑代码和生成翻译包的过程。
3308

被折叠的 条评论
为什么被折叠?



