python qpushbutton的自定义事件如何触发

avatar
作者
筋斗云
阅读量:0

在 PyQt5 中,要触发 QPushButton 的自定义事件,您需要先创建一个信号(signal),然后将其连接到槽函数(slot function)。以下是一个简单的示例:

import sys from PyQt5.QtWidgets import QApplication, QWidget, QPushButton, QVBoxLayout from PyQt5.QtCore import pyqtSignal  class CustomPushButton(QPushButton):     custom_signal = pyqtSignal()      def __init__(self, parent=None):         super().__init__(parent)         self.clicked.connect(self.on_click)      def on_click(self):         self.custom_signal.emit()  class MainWindow(QWidget):     def __init__(self):         super().__init__()         self.initUI()      def initUI(self):         self.setGeometry(300, 300, 250, 150)         self.setWindowTitle('Custom QPushButton')          layout = QVBoxLayout()          button = CustomPushButton("Click me")         button.custom_signal.connect(self.on_custom_signal)         layout.addWidget(button)          self.setLayout(layout)      def on_custom_signal(self):         print("Custom signal triggered!")  if __name__ == '__main__':     app = QApplication(sys.argv)     main_window = MainWindow()     main_window.show()     sys.exit(app.exec_()) 

在这个示例中,我们创建了一个名为 CustomPushButton 的自定义按钮类,它继承自 QPushButton。我们在这个类中定义了一个名为 custom_signal 的信号,并在按钮被点击时触发它。

然后,在 MainWindow 类中,我们创建了一个 CustomPushButton 实例,并将其 custom_signal 连接到 on_custom_signal 槽函数。当按钮被点击时,on_custom_signal 函数将被调用,输出 “Custom signal triggered!”。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!