Instructions

79
Die Methode
.pack() kann auch noch Parameter enthalten, die festlegen, wie ein Objekt innerhalb des
Dialogfelds angeordnet werden soll.
side=LEFT bedeutet, dass der Button linksbündig und nicht zentriert
angeordnet wird.
Button(root, text="Aus", command=LedAus).pack(side=LEFT)
Nach dem gleichen Schema wird noch ein zweiter Button angelegt, der die LED über die Funktion LedAus()
wieder ausschaltet.
Nun sind alle Funktionen und Objekte definiert, und das eigentliche Programm kann starten.
root.mainloop() Das Hauptprogramm besteht nur aus einer einzigen Zeile. Es startet die Hauptschleife
mainloop(), eine Methode des root-Widgets. Diese Programmschleife wartet darauf, dass der Benutzer
eines der Widgets betätigt und damit eine Aktion auslöst.
Das x-Symbol oben rechts zum Schließen des Fensters braucht bei Tkinter nicht eigens definiert zu werden.
Schließt der Benutzer das Hauptfenster
root, wird automatisch die Hauptschleife mainloop() beendet.
GPIO.cleanup() Das Programm läuft weiter zur letzten Zeile und schließt die geöffneten GPIO-Ports.
Nach dem Start des Programms erscheint ein Dialogfeld auf dem Bildschirm. Klicken Sie auf den Button
Ein
,
um die LED einzuschalten, danach auf
Aus
, um sie wieder auszuschalten.
10.2 Lauflicht mit grafischer Oberfläche steuern
Die Python-Bibliothek Tkinter bietet noch weitaus mehr Steuerelemente als nur einfache Buttons. Über
Radiobuttons lassen sich Auswahlmenüs bauen, in denen der Benutzer eine von mehreren angebotenen
Optionen auswählen kann.
Was sind Radiobuttons?
Der Name »Radiobutton« stammt tatsächlich von alten Radios, auf denen es Stationstasten für
vorprogrammierte Sender gab. Immer wenn man eine dieser Tasten gedrückt hat, sprang die zuletzt ge-
drückte durch eine raffinierte Mechanik automatisch wieder heraus. Radiobuttons verhalten sich
genauso. Wählt der Benutzer eine Option, werden die anderen automatisch ausgeschaltet.
Das nächste Experiment zeigt verschiedene LED-Blinkmuster, die denen aus dem Experiment »Bunte LED-
Muster und Lauflichter« ähneln. Im Unterschied zu dort braucht der Benutzer keine Zahlen auf dem
Textbildschirm einzugeben, sondern kann komfortabel aus einer einfachen Liste das gewünschte Muster
auswählen.