Als Arbeitsumgebung verwende ich mit meinen Schülern ein Editorfenster (KEdit), ein Kommandofenster (KTerm) und zwei Netscapefenster, um die Python- bzw. tkInter-Dokumentation (im HTML-Format) zu "browsen".
Die graphische Oberfläche der folgenden Programmieraufgabe wird "per Hand" kodiert. Natürlich gibt es Situationen, in denen die Oberfläche eines Programms nicht das eigentliche Thema des Unterrichts ist. In diesem Fall sollte man auf Oberflächen ganz verzichten oder aber als Lehrer die entsprechenden Klassen bereitstellen. Sinnvoll ist auch die Erstellung einer "Werkzeugkiste" (Toolbox), in der entsprechende Hilfsmittel abrufbereit liegen (neue BICS-Tools?). Im Fortgeschrittenenunterricht ist latürnich auch der Einsatz eines "Interface-Builders" denkbar.
Lesen Sie weitere Details der Anforderungsdefinition.
Auch bei der Programmierung graphischer Oberflächen zeigt Python seine Stärke. Mit Hilfe der "named-Parameter" und der sinnvoll besetzten Defaultwerte kann man oft mit wenig Aufwand ansprechende Oberflächen erstellen.
Lesen Sie: "Der Packer", ein Geometriemanager
Die Klasse Tool1 stellt den Schülern einige kombinierte grafische Elemente bereit. Sie enthält eine beschriftete Eingabezeile, ein Listenfenster mit Schiebern (Scrollbars) und eine Anordnung von drei Bedienknöpfen (Buttoms). Mit Hilfe der Abfrage der Systemvariablen __name__ kann unterschieden werden, ob die Datei als Klassenbibliothek oder als eigenständiges Programm verwendet wird. Nur im zweiten Fall wird das am Schluß stehende "Klassentestprogramm" ausgeführt.
Den Quelltext dieses Tools und das Ergebnis des Tests sehen sie HIER!
Das Abschlussbeispiel zeigt die Programmierung des Dateiauswahlfensters (GUI-Klasse). Das zugehörige Fachkonzept wird später vorgestellt. In diesem Beispiel können Sie die Anwendung von "Frames" studieren. (Einblick in den Quelltext zum oben abgebildeten "Dateiauswahlfenster") Im Verzeichnis SOFTWARE (beim Download) finden Sie das komplette Tool, mit einem Anwendungsbeispiel (klick: demo.py) !
Als Referenz für die GUI-Programmierung mit TkInter stehen im Internet mehrere Dokumentationen zur Verfügung. Suchen Sie z.B. nach dem "life-preserver-html.tar.gz".
Dr. Bernd Kokavecz