python GUI 之 PyQt5 快速安装使用
环境安装
使用 豆瓣源
快速下载 pyqt5
pip install pyqt5 -i https://pypi.douban.com/simple/
使用 豆瓣源
快速下载 pyqt5-tools
pip install pyqt5-tools -i https://pypi.douban.com/simple/
设计UI
使用 designer.exe
设计UI(安装了 pyqt5-tools
就有,不需要再下载),如果找不到 designer.exe
的位置,可以使用 Everything
搜索。
Everything
下载:
-
官方下载:voidtools
-
初的云盘:Everything
打开
designer.exe
,这是一款GUI设计工具,通过简单的拖放就可以设计程序UI。
点击 创建
按钮创建一个 UI
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-dhQPmYZo-1646217273531)(https://cdn.songonline.top/2022/03/02/89098e7403d45.png)]
整个软件差不多可以分为四部分:
- 窗体UI部分
- UI预览部分
- UI对象
- UI对象(部件)属性
我们来添加一个按钮来一个简单的开始,拖动 按钮
到窗体中
在右边对象栏中,pushButton
为我们窗体中创建的新部件,pushButton
为部件名,我们引用的使用就是引用这个名称。比如 self.ui.pushButton.clicked.connect(self.handleCalc)
保存 main.ui
到指定位置。
动态加载UI文件
from PyQt5 import uic
from PyQt5.QtWidgets import QApplication
class Stats:
def __init__(self):
# 从文件中加载UI定义
# 从 UI 定义中动态 创建一个相应的窗口对象
# 注意:里面的控件对象也成为窗口对象的属性了
# 比如 self.ui.button , self.ui.textEdit
self.ui = uic.loadUi("main.ui")
# 事件绑定:按钮点击绑定到 handleCalc 事件
self.ui.pushButton.clicked.connect(self.handleCalc)
# 处理事件
def handleCalc(self):
print('hello world')
if __name__ == '__main__':
app = QApplication([])
stats = Stats()
stats.ui.show()
app.exec_()
运行结果为点击按钮控制台输出hello world
: