python:tkinter:tkintereinstieg
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
python:tkinter:tkintereinstieg [2023/09/27 08:42] – [Ein erstes Beispiel] lutz | python:tkinter:tkintereinstieg [2023/09/27 12:34] (aktuell) – [Weitere einfache Widgets] lutz | ||
---|---|---|---|
Zeile 42: | Zeile 42: | ||
=====Weitere einfache Widgets===== | =====Weitere einfache Widgets===== | ||
+ | |||
+ | Bisher haben wir das Widget **Button** kennengelernt. Durch einen Mausklick auf einen Button können wir bestimmte Aktionen ausführen. Damit wir einfache Programme schreiben können lernen wir in diesem Abschnitt noch weitere Widgets kennen. **Labels** sind Beschriftungsflächen in einem Programm. Sie können Text und Bilder enthalten. **Entries** sind einzeilige Eingabefelder, | ||
+ | |||
+ | Bei den einzelnen Widgets sind das jeweils die folgenden Eigenschaften: | ||
+ | |||
+ | [[https:// | ||
+ | |||
+ | [[https:// | ||
+ | |||
+ | [[https:// | ||
+ | |||
+ | Über die Links gelangt man zu einer Übersicht aller Eigenschaften der Widgets. | ||
+ | |||
+ | Bisher fügen wir unsere Widgets mit der Methode '' | ||
+ | |||
+ | Im folgenden Programm wird über die Kommentare beschrieben, | ||
+ | |||
+ | <code python tkinter02.py> | ||
+ | # Tkinter wird importiert | ||
+ | import tkinter | ||
+ | # Funktion zum Beenden der Hauptschleife | ||
+ | def ende(): | ||
+ | main.destroy() | ||
+ | # Funktion zum Berechnen des Ergebnisses | ||
+ | def ausrechnen(): | ||
+ | # Die Zeichenkette aus dem Eingabefeld wird in der Variable eingabe abgespeichert | ||
+ | eingabe = eEingabe.get() | ||
+ | # Es wird versucht die Zeichenkette in eine Kommazahl umzuwandeln. | ||
+ | try: | ||
+ | zahl = float(eingabe) | ||
+ | # Wenn das Umwandeln erfolgreich ist wird die Texteigenschaft des Ergenislabels geändert: | ||
+ | # Es wird die Quadratzahl berechnet und das Ergebnis wird als Zeichenkette angehängt | ||
+ | lErgebnis[" | ||
+ | except: | ||
+ | # Wenn die Eingabe keine Zahl war, wird die Eigenschaft text des Ergebnislabels geändert: | ||
+ | # Ausgabe: Bitte eine Zahl eingeben! | ||
+ | lErgebnis[" | ||
+ | |||
+ | |||
+ | # Das Hauptfenster wird erzeugt | ||
+ | main = tkinter.Tk() | ||
+ | |||
+ | # Ein Label für die Überschrift mit dem Text Quadratzahlen wird erzeugt | ||
+ | lUeberschrift = tkinter.Label(main, | ||
+ | # Die Schriftart des Labels wird geändert | ||
+ | lUeberschrift[" | ||
+ | # Die Überschrift wird zum Hauptfenster hinzugefügt | ||
+ | lUeberschrift.pack() | ||
+ | |||
+ | # Ein Eingabefeld wird erzeugt. | ||
+ | eEingabe = tkinter.Entry(main) | ||
+ | # Das Eingabefeld wird zum Hauptfenster hinzugefügt. | ||
+ | eEingabe.pack() | ||
+ | |||
+ | # Ein Label für das Ergebnis wird erzeugt. | ||
+ | lErgebnis = tkinter.Label(main, | ||
+ | # Die Labelbreite wird auf 20 Zeichen gesetzt | ||
+ | lErgebnis[" | ||
+ | # Der Labeltext wird links ausgerichtet. | ||
+ | lErgebnis[" | ||
+ | # Das label wird zum Hauptfenster hinzugefügt. | ||
+ | lErgebnis.pack() | ||
+ | |||
+ | # Ein Button zum Ausrechnen mit der Aufschrift " | ||
+ | # und mit der Funktion ausrechnen() verknüpft. | ||
+ | bAusrechnen = tkinter.Button(main, | ||
+ | # Der Button wird zum Hauptfenster hinzugefügt. | ||
+ | bAusrechnen.pack() | ||
+ | |||
+ | # Ein Button zum Beenden mit der Aufschrift " | ||
+ | # und mit der Funktion ende() verknüpft. | ||
+ | bEnde = tkinter.Button(main, | ||
+ | # Der Button wird zum Hauptfenster hinzugefügt. | ||
+ | bEnde.pack() | ||
+ | |||
+ | # Die Hauptschleife wird gestartet. | ||
+ | main.mainloop() | ||
+ | </ | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | **Aufgabe 2** | ||
+ | |||
+ | Teste das Programm. Verändere die Eigenschaften der Widgets! Überlege dir neue Möglichkeiten der Berechnung (z.B. die Wurzel einer Zahl)! | ||
+ | |||
+ | **Aufgabe 3** | ||
+ | |||
+ | Schreibe ein Tkinter-Programm für einen einfachen Taschenrechner! | ||
+ | |||
+ | {{ : |
python/tkinter/tkintereinstieg.1695796944.txt.gz · Zuletzt geändert: 2023/09/27 08:42 von lutz