2016-06-27 8 views
0

Ich habe ein Python-Skript mit 2 Klassen, jede ist eine andere PyQt-Schnittstelle.PyQt - Zugangsdaten einer anderen Schnittstelle?

Die erste ist die Hauptschnittstelle und die zweite ist eine "Pop-up-Schnittstelle" - sie erscheint, wenn Sie auf eine Schaltfläche in der Hauptschnittstelle klicken.

Immer wenn diese Popup-Oberfläche über die Hauptschnittstelle gestartet wird, brauche ich sie, um Daten anzuzeigen, die von der Hauptschnittstelle kommen.

Wie kann ich das tun, wenn sie beide in verschiedenen Klassen sind?

Zum Beispiel Hauptschnittstelle:

class MainUI(QtGui.QWidget): 

def __init__(self): 
    super(QtGui.QWidget, self).__init__() 

    self.myData = "data" 

Pop-up-Schnittstelle:

class PopUp(QtGui.QDialog): 
    def __init__(self, parent=None): 
     super(MyDialog, self).__init__(parent) 

    # some stuff here 

Dank!

Antwort

1

Geben Sie einfach die Daten in das Konstruktor für PopUp

class PopUp(QtGui.QDialog): 
    def __init__(self, data, parent=None): 
     super(MyDialog, self).__init__(parent) 
     self.data = data 

Wenn dies aufgrund der Gestaltung des Projektes nicht möglich ist, Sie Signals and Slots verwenden können, um die Daten zwischen den Klassen zu übergeben.

+0

Richtig, kann nicht glauben, dass ich nicht darüber nachgedacht habe .. danke! – Gambit2007