tkinter (Toolkit-Interface) ist eine Bibliothek
in Python zur Erzeugung von Komponenten einer grafischen
Benutzeroberfläche.Aufgabe 1
Ändere die Dimension der Zeichenfläche.

Aufgabe 2
Ändere den Abstand der Gitternetzlinien.

Aufgabe 3
Zeichne die andere Diagonale ein.
Aufgabe 4
Füge weitere Streichhölzer hinzu. Ändere die Farbe des Holzes und
des Schwefels.
Gruppiere die Hölzchen in Fünfergruppen.
Aufgabe 5
Zeichne das "Haus vom Nikolaus". Nutze diesen
Link!
Um das Zeichnen beobachten zu können, versuche die die Methode sleep() der
Bibliothek time zu nutzen.
import time
time.sleep(1.5) Das geht so
leider aber nicht!
Lerne am folgendem Beispiel, wie man eigene Grafikbausteine
selbst definieren und nutzen kann.

Definiere eine Funktion Haus, welche es nun erlaubt beliebig
viele Häuser an verschiedenen Stellen in verschiedenen Größen
zeichnen zu lassen.
def haus(xa,ya,l)
Passe das Programm den Gewohnheiten aus dem Mathe-Unterricht
an:
- Koordinatenursprung ist links unten
- eine Einheit entspricht dem Abstand zweier benachbarter
Gitternetzlinien.
Aufgabe 6
Wir wollen Aktionen der Maus in unsere Programme einbauen.

- Zeichne Kreuz an der angeklickten Stelle.
- Zeichne anstelle des Kreuzes einen Kreis um den angeklickten
Punkt.

- Ändere das Programm so ab,
- dass der Mittelpunkt des Kreises im
Rasterfeld liegt und die Kreislinie die Rasterlinien tangiert.
- dass eine Funktion Kreis den gewünschten Kreis zeichnet, jedoch
ausgehend von der Position des Kreises im Kästchenraster.
Der nachfolgend abgebildete Kreis ist an der Position "Zeile 1 und
Spalte 0" gezeichnet.
Dieser Kreis sollte durch den Aufruf
kreis(1,0,"green")
gezeichnet werden.
Rechne dazu die Koordinaten des Mouse-Events in die Positionsangabe
des angeklickten Kästchens um. Hilfe: s = x//dx

-
Füge nun Aktionen für weitere Ereignisse der Maus hinzu.
Mit dem Doppelklick soll ein gelber Kreis, mit Rechtsklick ein
grüner Kreis gezeichnet werden.

- Verwalten von Bildschirmobjekten
Wir wollen den Zustand der einzelnen Rasterfelder in einem
Datenmodell abbilden.
Lerne dazu einiges über die Datenstruktur
Liste.
- Mach dich mit dem folgenden Programm vertraut.

downloadErweitere das
Programm:
- Mit Rechtsklick soll die Lampe ausgeschalten (grau) werden.
- Linker Doppelklick schaltet die Lampe (gelb) ein.
- Der Zustand der Lampen soll in der Liste
feld gespeichert werden.
feld[z][s]=False
feld[z][s]=not feld[z][s]
Speichere deine Lösung.
- Mach dich mit der folgenden Aufgaben Flutlicht aus dem
Bundeswettbewerb Informatik vertraut.
Ein überdachter Freizeitpark wird von in luftiger Höhe
angebrachten Flutern lauschig beleuchtet. Die lichtdurchflutete
Fläche ist quadratisch und in 5 x 5 gleich große quadratische
Beleuchtungsfelder eingeteilt. Über jedem Beleuchtungsfeld hängt
genau ein Fluter. Die Fluter werden von einer Zentrale aus
gesteuert: Auf einem Monitor befindet sich ein maßstäblich
verkleinertes Abbild der Beleuchtungsfelder. Die Fluter werden
durch einen Mausklick auf das jeweilige Quadrat ein- und
ausgeschaltet. Leider hat die Steuerung der Flutlichtanlage einen
irreparablen Schaden, es werden nämlich gleichzeitig mit einem
Fluter auch noch alle benachbarten Fluter geschaltet und zwar
eingeschaltet, wenn sie ausgeschaltet waren, und umgekehrt. Zwei
Fluter werden dabei genau dann als benachbart betrachtet, wenn sie
in einer Zeile oder Spalte unmittelbar nebeneinander liegen. Da
sich die Gemeinde wegen akuten Geldmangels in absehbarer Zeit
keine neue Steuerung leisten kann, braucht sie deine Hilfe .... .
Simuliere das Verhalten der Lampen im Freizeitpark mit
deinem Programm.
Ändere dazu dein bisheriges Programm und speichere es als
flutlicht-01.py.

Nach dem Programmstart sind alle Lampen aus.Mitteklick schaltet
die Lampe, ohne die benachbarten Lampen zu ändern.
Rechtsklick schaltet alle Lampen aus.
Linksklick soll das Schalten einer Lampe wie in der
Aufgabenstellung ausführen.
Gehe zuerst von der einer Lampe aus , die nicht am Rand liegt.
Das folgende Programmfragment gibt dir Lösungshinweise.

Beim Testen der Lösung kommt es unter bestimmten Bedingungen zu
Fehlermeldungen in der Python Shell.
Füge in das Programm bedingte Anweisungen ein, um die Ursache der
Fehlermeldungen zu beseitigen.
- Ändere das Programm flutlicht-01.py ab, um die
Simulation "Game
of Life" zu programmieren.
Auf den Schul-PCs findest auf dem Desktop den Ordner
Unterrichtsmaterialien und dort unter \Fach\info\Programme
eine Link Game of Life zu einem Java-Programm GridLife.
Die Anleitung zu diesem Programm ist die Datei Game of Life.pdf.
Nutze die Funktion des vorgegebenen Programms.
Speichere dein Programm als GamOfLife-01.py.
- Deine erste Aufgabe ist es, die Anzahl der benachbarten
lebenden Zellen einer Zelle zu bestimmen.
- Erzeuge eine Kopie feld_neu
der Liste feld.
- Gehe jede Zelle in feld durch,
bestimme die Anzahl der lebenden Nachbarzelle, entscheide ob die
Zelle leben wird oder nicht, und trage das Ergebnis in
feld_neu ein.
- Kopiere nun die Werte aus
feld_neu in feld.
Stelle den Zustand der neuen Zellgeneration auf dem Bildschirm
dar.
- Wiederhole ab c) beliebig oft..

|