2011-01-16 24 views
9

Deseo conectar una señal en el hilo de fondo a una ranura en el hilo de la interfaz gráfica de usuario de una manera pitónica.Cómo conectar la ranura PyQt de la secuencia de fondo a la secuencia de comandos

Tengo el siguiente fragmento de código.

from PyQt4.QtCore import * 
class CompanyPresenter(QObject): 
    fieldChangeSignal = pyqtSignal(str, str) 
    def __init__(self,model,view): 
     self.model = model  # a CompanyModel 
     self.view = view   # a CompanyView 
     self.fieldChangeSignal.connect(view.setField) 

me sale este error (en la línea de conexión)

TypeError: pyqtSignal debe estar enlazado a un QObject, no 'CompanyPresenter'

Pero CompanyPresenter hereda de QObject lo que es una QObject. ¿Que esta pasando?

(Quiero que el presentador y la GUI se ejecuten en diferentes subprocesos al final, pero aún no he llegado tan lejos. Todavía no hay subprocesos).

Respuesta

23

olvidaras:

def __init__(self,model,view): 
    super(CompanyPresenter, self).__init__() # this!!!!!!!!! 

añadir esto va a funcionar (probado)

.
Cuestiones relacionadas