PyQt6 简单示例
2025-01-09 本文已影响0人
河码匠
一个简单的窗口包含一个按钮,点击按钮时弹出对话框
import sys
from PyQt6.QtWidgets import QApplication, QWidget, QPushButton, QVBoxLayout, QMessageBox
def on_button_click():
# 创建一个消息框
msg = QMessageBox()
msg.setIcon(QMessageBox.Icon.Information)
msg.setText("按钮被点击了!")
msg.setWindowTitle("消息框")
msg.exec()
app = QApplication(sys.argv) # 创建应用对象
# 创建窗口
window = QWidget()
window.setWindowTitle("PyQt6 示例") # 标题
window.resize(300, 200) # 窗口宽高
# 创建布局
layout = QVBoxLayout()
# 创建按钮并绑定点击事件
button = QPushButton("点击我")
button.clicked.connect(on_button_click) # 将按钮点击事件与 Slots 函数绑定
# 将按钮添加到布局中
layout.addWidget(button)
# 设置窗口的布局
window.setLayout(layout)
# 显示窗口
window.show()
sys.exit(app.exec()) # 启动事件循环
说明
-
QApplication:
-
QApplication(sys.argv)创建一个应用对象,这是 PyQt6 应用程序的基础。应用对象负责管理应用程序的控制流、窗口以及所有资源的分配。 -
sys.argv是命令行参数,通常在创建应用时传入。对于大多数 PyQt6 程序,可以直接传入sys.argv。
-
-
QWidget:
-
QWidget是所有窗口类的基类。window = QWidget()创建了一个空白的窗口对象。 -
window.setWindowTitle("PyQt6 示例")设置窗口的标题。 -
window.resize(300, 200)设置窗口的尺寸,300px 宽,200px 高。
-
-
QPushButton:
-
QPushButton("点击我")创建一个按钮控件,按钮的标签是 "点击我"。 -
button.clicked.connect(on_button_click)将按钮的点击信号 (clicked) 连接到on_button_click函数。当按钮被点击时,会执行该函数。
-
-
QVBoxLayout:
-
QVBoxLayout()创建一个垂直布局管理器。布局管理器负责控制控件(例如按钮)在窗口中的位置。 -
layout.addWidget(button)将按钮添加到垂直布局中。布局管理器会自动处理控件的排列。
-
-
QMessageBox:
-
QMessageBox是一个标准的消息框,用于显示提示或警告信息。它常用于向用户显示信息或警告。 -
msg.setIcon(QMessageBox.Icon.Information)设置消息框的图标为信息图标。 -
msg.setText("按钮被点击了!")设置消息框显示的文本内容。 -
msg.setWindowTitle("消息框")设置消息框的标题。 -
msg.exec()显示消息框并启动事件循环,直到用户关闭消息框。
-
-
事件循环 (
app.exec()):-
app.exec()启动事件循环,这是 PyQt6 程序的核心。事件循环会等待用户的输入事件(如点击按钮、键盘输入等),并相应地触发信号与槽机制。
-