2016-06-03 2 views
0

Я использую следующий примерСоздание сигнала с параметрами в PyQt

class bar(QObject): 
    def mySlot(self,p): 
     print "This is my slot " + str(p) 


class Foo(QObject): 
    trigger = pyqtSignal() 

    def my_connect_and_emit_trigger(self): 
     self.trigger.emit(12) 

    def handle_trigger(self): 
     # Show that the slot has been called. 
     print "trigger signal received" 


b = bar() 
a = Foo() 
a.trigger.connect(int,b.mySlot) <---how to fix this 
a.connect_and_emit_trigger() 

Я пытаюсь прикрепить слот b.mySlot, который принимает один параметр INT в сигнал a.trigger мой вопрос, что я делаю неправильно. Я не мог найти материал, который помогает с параметрами сигналов.

ответ

1

это правильно:

class bar(QObject): 
    def mySlot(self,p): 
     print "This is my slot " + str(p) 


class Foo(QObject): 
    trigger = pyqtSignal(int) 

    def my_connect_and_emit_trigger(self): 
     self.trigger.emit(12) 

    def handle_trigger(self): 
     # Show that the slot has been called. 
     print "trigger signal received" 


b = bar() 
a = Foo() 
a.trigger.connect(b.mySlot) 
a.my_connect_and_emit_trigger() 

Док here