PySide6控件教程中的一些约定
在本教程中,我们将介绍一些在PySide6中使用控件时的常用代码和内容约定,以帮助您编写易于理解、易于维护和高质量的GUI应用程序。
代码约定
import sys
from PySide6.QtCore import Slot
from PySide6.QtWidgets import QApplication, QMainWindow, QPushButton, QStyleFactory
class MainWindow(QMainWindow):
def __init__(self):
super().__init__()
self.initUI()
def initUI(self):
# 设置窗口标题
self.setWindowTitle("QPushButton 示例")
# 创建一个 QPushButton对象
self.button = QPushButton("点我", self)
# 将按钮移动到30,30处
self.button.move(30, 30)
# 将按钮的点击信号连接到槽函数
self.button.clicked.connect(self.buttonClicked)
@Slot()# 使用装饰器
def buttonClicked(self):
print("QPushButton 被点击了")
if __name__ == '__main__':
app = QApplication(sys.argv)
app.setStyle(QStyleFactory.create("Fusion")) #fusion风格
window = MainWindow()
window.show()
sys.exit(app.exec())
该教程的所有代码都将以该模板进行编写,其中:
-
以
2-3
行为例,PySide6模块用以下方式进行导入:from PySide6.QtWidgets import QPushButton
不使用以下方式:
from PySide6 import QtWidgets from PySide6.QtWidgets import *
这样能清楚的知道示例中使用了哪些组件;
- 以
10
行为例,初始化窗口、布局、创建小部件(控件)、信号与槽函数连接的代码都放入iniUI()
方法中; - 以
21
行为例,所有自定义的槽函数都使用@Slot()
装饰器; - 以
28
行为例,以Fusion风格运行;
内容约定
PySide6小部件几乎都是从基类继承而来,由于种类繁多,内容中不会去详细介绍它们;
以QPushButton
小部件为例:
QPushButton
||
QAbstractButton
||
QWidget
||
QObject
QPushButton
继承自QAbstracButton
,QAbstractButton
继承自QWidget
,QWidget
继承自QObject
;
内容以呈现QPushButton的用法为主,不会去对QAbstractButton进行详细说明;