25.Graphical User Interfaces with Tk¶
Tk/Tcl has long been an integral part of Python. It provides a robust andplatform independent windowing toolkit, that is available to Python programmersusing thetkinter package, and its extension, thetkinter.tix andthetkinter.ttk modules.
Thetkinter package is a thin object-oriented layer on top of Tcl/Tk. Tousetkinter, you don’t need to write Tcl code, but you will need toconsult the Tk documentation, and occasionally the Tcl documentation.tkinter is a set of wrappers that implement the Tk widgets as Pythonclasses. In addition, the internal module_tkinter provides a threadsafemechanism which allows Python and Tcl to interact.
tkinter’s chief virtues are that it is fast, and that it usually comesbundled with Python. Although its standard documentation is weak, goodmaterial is available, which includes: references, tutorials, a book andothers.tkinter is also famous for having an outdated look and feel,which has been vastly improved in Tk 8.5. Nevertheless, there are many otherGUI libraries that you could be interested in. For more information aboutalternatives, see theOther Graphical User Interface Packages section.
- 25.1.
tkinter— Python interface to Tcl/Tk - 25.2.
tkinter.ttk— Tk themed widgets - 25.3.
tkinter.tix— Extension widgets for Tk - 25.4.
tkinter.scrolledtext— Scrolled Text Widget - 25.5. IDLE
- 25.5.1. Menus
- 25.5.1.1. File menu (Shell and Editor)
- 25.5.1.2. Edit menu (Shell and Editor)
- 25.5.1.3. Format menu (Editor window only)
- 25.5.1.4. Run menu (Editor window only)
- 25.5.1.5. Shell menu (Shell window only)
- 25.5.1.6. Debug menu (Shell window only)
- 25.5.1.7. Options menu (Shell and Editor)
- 25.5.1.8. Window menu (Shell and Editor)
- 25.5.1.9. Help menu (Shell and Editor)
- 25.5.1.10. Context Menus
- 25.5.2. Editing and navigation
- 25.5.3. Startup and code execution
- 25.5.4. Help and preferences
- 25.5.1. Menus
- 25.6. Other Graphical User Interface Packages
