1 安装Qt Designer
安装这个包的时候会自带安装 Qt Designer, 安装目录为python的安装根目录的 Lib/site-packages/qt5_applications/Qt/bin 目录下。
bash
pip install pyqt5-tools

2 新建窗体
2.1 新建主窗体

创建之后如下图:
设置主窗口大小:
设置窗口的Title.
设置 QEditText 的字体:
2.2 添加控件
将需要的控件添加到窗体内,使用布局管理器布局好。
点击 保存 按钮保存UI文件保存为 translator.ui。
3 转换UI文件
bash
pyuic5 -o translator_ui.py translator.ui

4 创建主py文件
新建一个 main.py 文件:
bash
import sys
from PyQt5.QtWidgets import QApplication,QWidget
from translator_ui import Ui_Form
class MyWindow(QWidget, Ui_Form):
def __init__(self):
super(MyWindow, self).__init__()
self.setupUi(self)
self.retranslateUi(self)
if __name__ == "__main__":
app = QApplication(sys.argv)
window = MyWindow()
# 显示窗口
window.show()
# 进入程序的主循环,并通过exit函数确保主循环安全结束
sys.exit(app.exec_())
5 运行主py文件

6 添加信号和槽
添加控件的信号和槽,实现界面和业务逻辑分离。
附 1 实现英文翻译功能
安装python包:
bash
pip install argostranslate
Sample代码:
bash
import argostranslate.package
import argostranslate.translate
from_code = "en"
to_code = "zh"
# 安装语言包,这部分代码执行1次就行
# argostranslate.package.update_package_index()
available_packages = argostranslate.package.get_available_packages()
package_to_install = next(
filter(
lambda x: x.from_code == from_code and x.to_code == to_code, available_packages
)
)
argostranslate.package.install_from_path(package_to_install.download())
# Translate
translatedText = argostranslate.translate.translate("No specific requirements have been imposed. 1.1 Purpose of the document", from_code, to_code)
print(translatedText)
