Pyqt5 装饰器@pyqtSlot() 和 connect()使用
1. @pyqtSlot()的使用
# 需要引入 pyqtSlot 库函数
from PyQt5.QtCore import pyqtSlot
@pyqtSlot() #装饰器,此函数没有connect直接通过装饰器初始化连接槽函数
def on_pushButton_clicked(self)
print("我点击了")
在@pyqtSlot()方式里,函数名称有特殊要求,如下:
def on_(控件对象名)_信号名(self,内置参数):
@pyqtSlot()控制控件的多信号
@pyqtSlot()
def on_lineEdit_returnPressed(self):
print('触发了信号 returnPressed')
def on_lineEdit_textChanged(self):
print('触发了信号 textChanged')
注意:一个控件同时要写多个信号与槽函数时,只需要写一遍@pyqtSlot()关键词,中间可以有其他函数隔开。一定是一个类里面的,一个控件只写一遍@pyqtSlot(),不是所有控件信号只写一次@pyqtSlot(),有多少控件的信号还是要写。
2. connect()使用
# 在初始化函数中信号连接槽函数
self.pushButton.clicked.connect(self.test)
# 槽函数
def test(self):
print("点击了一下")