PyQt5基础学习-信号和槽的自动连接 1.@QtCore.pyqtSlot(定义为槽函数) 2.QpushButton().setObjectName("设置需要绑定的函数名")

@QtCore.pyqtSlot 定义为需要自动连接的槽函数, on_对象名_信号名字

AutoSignalSlot.py 

"""
信号与槽自动连接

on_对象名_signalname

"""
from PyQt5 import QtCore
from PyQt5.QtWidgets import QApplication, QWidget, QHBoxLayout, QPushButton
import sys

class AutoSignalSlot(QWidget):
    def __init__(self):
        super(AutoSignalSlot, self).__init__()
        self.okButton = QPushButton('ok', self)
        self.okButton.setObjectName("okButton")

        self.okButton1 = QPushButton('cancel', self)
        self.okButton1.setObjectName("cancelButton")


        layout = QHBoxLayout()
        layout.addWidget(self.okButton)
        self.setLayout(layout)
        QtCore.QMetaObject.connectSlotsByName(self)
        #self.okButton.clicked.connect(self.on_okButton_clicked)

    @QtCore.pyqtSlot()
    def on_okButton_clicked(self):
        print("点击了ok按钮")

    @QtCore.pyqtSlot()
    def on_cancelButton_clicked(self):
        print("点击了cancel按钮")

if __name__ == "__main__":
    app = QApplication(sys.argv)

    main = AutoSignalSlot()
    main.show()

    sys.exit(app.exec_())

PyQt5基础学习-信号和槽的自动连接 1.@QtCore.pyqtSlot(定义为槽函数) 2.QpushButton().setObjectName("设置需要绑定的函数名")

 

上一篇:Python从入门到实践(十)——测试代码


下一篇:论静态方法和类方法