📜  pyqt 按钮单击连接 - Python (1)

📅  最后修改于: 2023-12-03 15:33:51.130000             🧑  作者: Mango

PyQt 按钮单击连接 - Python

PyQt 是 Python 语言的一种界面库,用于创建图形界面应用程序。它可以与 Qt 库一起使用,从而提供了丰富的界面组件和功能。在 PyQt 中,按钮单击连接是一种常见的需求,它可以让用户与应用程序进行交互,执行某些特定的操作。

1. 创建按钮

在 PyQt 中,首先需要创建一个按钮对象,并将其添加到应用程序的窗口中。这里以一个简单的示例代码为例:

import sys
from PyQt5.QtWidgets import QApplication, QMainWindow, QPushButton

class MainWindow(QMainWindow):
    def __init__(self):
        super().__init__()
        self.setWindowTitle("PyQt Button Click Connect")
        self.setGeometry(100, 100, 300, 200)
        self.btn = QPushButton("Click Me", self)
        self.btn.move(100, 80)
        self.show()

if __name__ == '__main__':
    app = QApplication(sys.argv)
    win = MainWindow()
    sys.exit(app.exec_())

在这段代码中,我们创建了一个名为 MainWindow 的类,它继承自 QMainWindow 类。我们在该类的构造函数中,设置了窗口标题,几何形状,并创建了一个 QPushButton 对象,并将其添加到窗口中,最后显示该窗口。

2. 连接按钮单击事件

一旦我们创建了一个按钮,那么就需要为其添加一个单击事件的处理函数。在 PyQt 中,可以通过使用 connect() 函数来实现按钮单击事件的连接。在我们的示例代码中,我们将为按钮 btn 添加一个单击事件的处理函数,具体实现如下:

...
class MainWindow(QMainWindow):
    def __init__(self):
        ...
        self.btn = QPushButton("Click Me", self)
        self.btn.move(100, 80)
        self.btn.clicked.connect(self.on_btn_clicked)
        ...

    def on_btn_clicked(self):
        print("Button Clicked!!!")

在这段代码中,我们首先为按钮添加一个单击事件的处理函数 on_btn_clicked()。然后,使用 clicked 信号将该函数连接到按钮对象 btn 上。在该函数中,我们简单地打印一条消息,用于标记按钮单击事件的发生。

3. 完整示例代码
import sys
from PyQt5.QtWidgets import QApplication, QMainWindow, QPushButton

class MainWindow(QMainWindow):
    def __init__(self):
        super().__init__()
        self.setWindowTitle("PyQt Button Click Connect")
        self.setGeometry(100, 100, 300, 200)
        self.btn = QPushButton("Click Me", self)
        self.btn.move(100, 80)
        self.btn.clicked.connect(self.on_btn_clicked)
        self.show()

    def on_btn_clicked(self):
        print("Button Clicked!!!")

if __name__ == '__main__':
    app = QApplication(sys.argv)
    win = MainWindow()
    sys.exit(app.exec_())

在这个完整的示例代码中,我们创建了一个 MainWindow 类,用于显示一个按钮。当用户单击该按钮时,将调用 on_btn_clicked() 函数,并在控制台打印一条消息。在这个示例中,我们使用 clicked 信号来连接按钮的单击事件,并使用 print() 函数打印消息。