python装饰器在PyQt4中的应用


我在pyqt的example中看到很多类似下面这样的语法,我查了些资料,但是不是很明白。


 @QtCore.pyqtSlot(str, str)
def messageSlot(self, nickname, text):
    [...]

想在这里请教下大家 @QtCore.pyqtSlot(str, str) 这句话到干了哪些事情,起到了什么作用

python decorator pyqt4

iskapa 11 years, 2 months ago

通过@PyQt4.QtCore.pyqtSlot(str , str)装饰方法定义带有两个参数的槽函数

拆解出来就是messageSlot = QtCore.pyqtSlot(str, str)(messageSlot)
首先,QtCore.pyqtSlot(str, str)返回一个函数,假设为A
然后,函数再运行A(messageSlot)

Cyusii answered 11 years, 2 months ago

你就理解成 messageSlot = QtCore.pyqtSlot(str, str)(messageSlot) 这样就好了。

鸡蛋布丁滑溜溜 answered 11 years, 2 months ago

Your Answer