ich möchte euch zwei Möglichkeiten aufzeigen, einmal meine einfache Variante, und eine Variante, die ich im Netz gefunden habe, und ich möchte zusammen mit euch versuchen zu verstehen, wie die Variante aus dem Netz zu verstehen ist, und gerne möchte ich wissen, welche Variante "besser" ist.
Meine Variante:
Code: Alles auswählen
self._checkbox.stateChanged.connect(self._checkbox_cb)
def _checkbox_cb(self):
if self._checkbox.isChecked():
print "Checked"
else:
print "Unchecked"
Variante aus dem Netz:
Code: Alles auswählen
self._checkbox.stateChanged.connect(self._checkbox_cb)
def _checkbox_cb(self, state):
assert QtCore.Qt.Unchecked == 0
assert QtCore.Qt.Checked == 2
assert state in (QtCore.Qt.Checked, QtCore.Qt.Unchecked, QtCore.Qt.PartiallyChecked)
print "state:", state
Code: Alles auswählen
if not _checkbox: raise AssertionError()
Zeile 3: Als Argument wird der Funktion ein state übergeben. State hat hier die Aufgabe zu überwachen(?)
Zeile 4 und 5: Die assert-Anweisung besagt, sobald beim Test die Bedingung falsch ist bzw. nicht erfüllt ist, soll ein Fehler ausgeworfen werden
Zeile 6: Hier komme ich ins Stocken.