安装
安装Pyside6
Bash
pip install pyside6
基础框架
Python
from PySide6.QtWidgets import QApplication, QMainWindow,
class MyWindow(QMainWindow):
def __init__(self):
super().__init__()
if __name__ == "__main__":
# 创建一个 QApplication 对象
# QApplication 是 GUI 应用的核心,管理主事件循环
app = QApplication([])
# 创建一个继承自 QMainWindow的 MyWindow 类的实例,表示程序的主窗口
window = MyWindow()
# show() 方法将窗口从隐藏状态变为可见状态
window.show()
# 启动应用程序的事件循环
# 事件循环会保持程序运行,等待用户输入(如点击、键盘事件等),并根据用户操作触发相应的事件处理。
app.exec()
QApplication
是 PySide6 应用的主类,管理应用程序的控制流和主设置。QMainWindow
是一个高级窗口类,通常用作 GUI 程序的主窗口,支持菜单栏、工具栏、状态栏等功能。
三种基础控件
Python
from PySide6.QtWidgets import QApplication, QMainWindow, QPushButton, QLabel, QLineEdit
from PySide6.QtCore import Qt
class MyWindow(QMainWindow):
def __init__(self):
super().__init__()
btn = QPushButton('按钮', self) # 创建按钮,第一个参数是按钮名称(text)
btn.setGeometry(50, 50, 75, 30) # 设置按钮位置和大小,参数依次是x坐标,y坐标,宽度,高度;坐标以左上角为原点
btn.setToolTip('请点击') # 设置按钮提示信息
# 按钮的更多属性设置,可以从Qtdesigner中找到
lb = QLabel("标签", self) # 创建标签,第一个参数是标签名称
lb.setGeometry(20, 20, 150, 30) # 设置标签位置和大小,参数依次是x坐标,y坐标,宽度,高度;坐标以左上角为原点
lb.setText('被修改的标签文字')
line = QLineEdit(self) # 创建一个输入框
line.setPlaceholderText('请输入') # 设置输入框提示信息
line.setGeometry(100, 100, 100, 30)
if __name__ == "__main__":
app = QApplication([])
window = MyWindow()
window.show()
app.exec()
执行结果:
使用Qt designer
选择Widget创建一个窗体
将左侧的Push Button拖到画布上
右侧的属性编辑器会显示QPushButton的全部属性
实际上在代码中,表示按钮的QPushButton
类继承自PySide6.QtWidgets.QAbstractButton
,而 QAbstractButton
类继承自PySide6.QtWidgets.QWidget
类,正如属性编辑器中所显示的。
一个项目:制作一个简单的登录界面
使用Qt designer,将Label, Line Edit 和 Push Button拖拽到画布上,并使用属性编辑器编辑控件们的属性。
点击窗体------>预览,就能显示窗口的样子。