Ich benutze PyQT4, um eine GUI zu erstellen. Ich habe eine Taste, die mit einer def
verbinden muss, wenn eine bestimmte Bedingung erfüllt ist. Wenn diese Bedingung nicht erfüllt ist, sollte die Schaltfläche eine Verbindung zu einem anderen def
herstellen. Bisher ist dies, was ich habe -Eine Schaltfläche, die mit zwei verschiedenen Ereignismethoden in PyQT verbunden ist
if self.txtAgilent.text() and self.txtBattery.text():
self.connect(self.buttonPlot, SIGNAL('clicked()'), self.plotButtonClicked)
else:
self.connect(self.buttonPlot, SIGNAL('clicked()'), self.fileErrorMsgBox)
Wie oben, wenn die erste Bedingung erfüllt ist (das heißt, wenn zwei Dateien ausgewählt werden), eine grafische Darstellung erstellt. Wenn nicht, erscheint eine Fehlermeldung. Das Problem ist, dass immer wenn ich die Plot-Schaltfläche in meiner GUI drücke, nur die Fehlermeldung erscheint, obwohl ich zwei Dateien erfolgreich ausgewählt habe.
Die Message-Box-Funktion ist wie folgt:
def fileErrorMsgBox(self):
w = QWidget()
msg = QMessageBox.warning(w, "WARNING", "File(s) not chosen! Please choose a file.")
Wie löse ich dieses Problem?
was genau meinen Sie ausgewählt, Alles, was ich sehen kann, ist, dass Sie versuchen, den Wert von zwei Textfeldern zu erhalten, indem Sie '.text()' – danidee
@danidee aufrufen. Ich denke, das OP bedeutet, dass der Benutzer die zwei Textfelder füllen muss, indem er Dateien auswählt (d. H. Auswählt). – ekhumoro