1.. _tkinter:
2
3*********************************
4Graphical User Interfaces with Tk
5*********************************
6
7.. index::
8   single: GUI
9   single: Graphical User Interface
10   single: Tkinter
11   single: Tk
12
13Tk/Tcl has long been an integral part of Python.  It provides a robust and
14platform independent windowing toolkit, that is available to Python programmers
15using the :mod:`tkinter` package, and its extension, the :mod:`tkinter.tix` and
16the :mod:`tkinter.ttk` modules.
17
18The :mod:`tkinter` package is a thin object-oriented layer on top of Tcl/Tk. To
19use :mod:`tkinter`, you don't need to write Tcl code, but you will need to
20consult the Tk documentation, and occasionally the Tcl documentation.
21:mod:`tkinter` is a set of wrappers that implement the Tk widgets as Python
22classes.
23
24:mod:`tkinter`'s chief virtues are that it is fast, and that it usually comes
25bundled with Python. Although its standard documentation is weak, good
26material is available, which includes: references, tutorials, a book and
27others. :mod:`tkinter` is also famous for having an outdated look and feel,
28which has been vastly improved in Tk 8.5. Nevertheless, there are many other
29GUI libraries that you could be interested in. The Python wiki lists several
30alternative `GUI frameworks and tools <https://wiki.python.org/moin/GuiProgramming>`_.
31
32.. toctree::
33
34   tkinter.rst
35   tkinter.colorchooser.rst
36   tkinter.font.rst
37   dialog.rst
38   tkinter.messagebox.rst
39   tkinter.scrolledtext.rst
40   tkinter.dnd.rst
41   tkinter.ttk.rst
42   tkinter.tix.rst
43   idle.rst
44
45.. Other sections I have in mind are
46   Tkinter internals
47   Freezing Tkinter applications