Grafische Benutzeroberflächen mit Tk
************************************

Tk/Tcl ist seit Langem ein fester Bestandteil von Python. Es stellt
einen robusten und plattformunabhängigen Werkzeugkasten für Fenster
bereit, der Python-Programmierern über das Paket "tkinter" und dessen
Erweiterung, das Modul "tkinter.ttk", zur Verfügung steht.

Das Paket "tkinter" ist eine dünne objektorientierte Schicht über
Tcl/Tk. Um "tkinter" zu verwenden, musst du keinen Tcl-Code schreiben,
aber du wirst die Tk-Dokumentation zurate ziehen müssen und
gelegentlich auch die Tcl-Dokumentation. "tkinter" ist eine Sammlung
von Wrappern, die die Tk-Widgets als Python-Klassen umsetzen.

Die größten Vorzüge von "tkinter" sind, dass es schnell ist und
normalerweise mit Python mitgeliefert wird. Zwar ist die zugehörige
Dokumentation dürftig, es gibt aber gutes Material, darunter
Referenzen, Tutorials, ein Buch und weitere Quellen. "tkinter" ist
außerdem dafür bekannt, altmodisch auszusehen, was sich mit Tk 8.5
deutlich gebessert hat. Dennoch gibt es viele andere GUI-Bibliotheken,
die für dich interessant sein könnten. Das Python-Wiki führt mehrere
alternative GUI frameworks and tools auf.

* "tkinter" --- Python-Schnittstelle zu Tcl/Tk

  * Architektur

  * Tkinter-Module

  * Tkinter-Rettungsring

    * Ein Hello-World-Programm

    * Wichtige Tk-Konzepte

    * Wie Tkinter Tcl/Tk kapselt

    * Wie mache ich...? Welche Option bewirkt...?

    * Im Tcl/Tk-Referenzhandbuch zurechtfinden

  * Threading-Modell

  * Kurzreferenz

    * Optionen setzen

    * Geometrieverwaltung

    * Widget-Variablen koppeln

    * Der Fenstermanager

    * Datentypen von Tk-Optionen

    * Bindungen und Ereignisse

    * Der Parameter index

    * Bilder

  * Referenz

    * Basis- und Mixin-Klassen

    * Toplevel-Widgets

    * Widget-Klassen

    * Variablenklassen

    * Bildklassen

    * Weitere Klassen

    * Funktionen auf Modulebene

    * Dateihandler

    * Konstanten

* "tkinter.colorchooser" --- Dialog zur Farbauswahl

* "tkinter.font" --- Tkinter-Hülle für Schriftarten

* Tkinter dialogs

  * "tkinter.simpledialog" --- Standard Tkinter input dialogs

  * "tkinter.filedialog" --- File selection dialogs

    * Native load/save dialogs

  * "tkinter.commondialog" --- Dialog window templates

  * "tkinter.dialog" --- Classic Tk dialog boxes

* "tkinter.messagebox" --- Tkinter message prompts

* "tkinter.scrolledtext" --- Text-Widget mit Scrollbar

* "tkinter.dnd" --- Unterstützung für Drag-and-drop

* "tkinter.ttk" --- Tk-Widgets mit Themes

  * Ttk verwenden

  * Ttk-Widgets

  * Widget

    * Standardoptionen

    * Optionen scrollbarer Widgets

    * Optionen von Labels

    * Optionen zur Abwärtskompatibilität

    * Widget-Zustände

    * ttk.Widget

  * Combobox

    * Optionen

    * Virtuelle Ereignisse

    * ttk.Combobox

  * Spinbox

    * Optionen

    * Virtuelle Ereignisse

    * ttk.Spinbox

  * Notebook

    * Optionen

    * Optionen von Tabs

    * Kennungen von Tabs

    * Virtuelle Ereignisse

    * ttk.Notebook

  * Progressbar

    * Optionen

    * ttk.Progressbar

  * Separator

    * Optionen

  * Sizegrip

    * Plattformspezifische Hinweise

    * Fehler

  * Treeview

    * Optionen

    * Optionen von Einträgen

    * Optionen von Tags

    * Kennungen von Spalten

    * Virtuelle Ereignisse

    * ttk.Treeview

  * Gestaltung mit Ttk

    * Layouts

  * Weitere Widgets

* IDLE --- Python editor and shell

  * Menus

    * File menu (Shell and Editor)

    * Edit menu (Shell and Editor)

    * Format menu (Editor window only)

    * Run menu (Editor window only)

    * Shell menu (Shell window only)

    * Debug menu (Shell window only)

    * Options menu (Shell and Editor)

    * Window menu (Shell and Editor)

    * Help menu (Shell and Editor)

    * Context menus

  * Editing and Navigation

    * Editor windows

    * Key bindings

    * Automatic indentation

    * Search and Replace

    * Completions

    * Calltips

    * Format block

    * Code Context

    * Shell window

    * Text colors

  * Startup and Code Execution

    * Command-line usage

    * Startup failure

    * Running user code

    * User output in Shell

    * Developing tkinter applications

    * Running without a subprocess

  * Help and Preferences

    * Help sources

    * Setting preferences

    * IDLE on macOS

    * Extensions

  * idlelib --- implementation of IDLE application

* "turtle" --- Turtle-Grafik

  * Tutorial

    * Eine Turtle-Umgebung starten

    * Einfaches Zeichnen

      * Stiftsteuerung

      * Die Position der Turtle

    * Algorithmische Muster erstellen

  * Referenz

    * Turtle methods and functions

      * Bewegen und zeichnen

      * Zustand der Turtle abfragen

      * Einstellungen für Messungen

      * Stiftsteuerung

        * Zeichenzustand

        * Farbkontrolle

        * Füllen

        * Mehr Zeichenkontrolle

      * Turtle-Status

        * Sichtbarkeit

        * Erscheinungsbild

      * Ereignisse verwenden

      * Spezielle Turtle-Methoden

      * Zusammengesetzte Formen

    * Screen methods and functions

      * Fenstersteuerung

      * Animationskontrolle

      * Screen-Events verwenden

      * Eingabemethoden

      * Einstellungen und spezielle Methoden

      * Screen-only methods

    * Öffentliche Klassen

    * Erklärungen

  * How-to-Anleitungen

    * Füllen automatisch beginnen und beenden

    * Das "turtle"-Modul im eigenen Namensraum verwenden

    * Turtle-Grafik in einem Skript verwenden

    * Objektorientierte Turtle-Grafik verwenden

    * Wie man die Hilfe verwendet

    * Übersetzung von Docstrings in verschiedene Sprachen

    * Wie man Screen und Turtles konfiguriert

  * Erklärung

  * "turtledemo" --- Demo-Skripte
