blob: 944687bb02c31f3356858a78987053a2d0b04a20 [file] [log] [blame]
Georg Brandl8ec7f652007-08-15 14:28:01 +00001.. _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` module, and its extension, the :mod:`Tix` module.
16
17The :mod:`Tkinter` module is a thin object-oriented layer on top of Tcl/Tk. To
18use :mod:`Tkinter`, you don't need to write Tcl code, but you will need to
19consult the Tk documentation, and occasionally the Tcl documentation.
20:mod:`Tkinter` is a set of wrappers that implement the Tk widgets as Python
21classes. In addition, the internal module :mod:`_tkinter` provides a threadsafe
22mechanism which allows Python and Tcl to interact.
23
24:mod:`Tkinter`'s chief virtues are that it is fast, and that it usually comes
Georg Brandlae98f502008-05-11 14:56:04 +000025bundled 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. For more information about
30alternatives, see the :ref:`other-gui-packages` section.
Georg Brandl8ec7f652007-08-15 14:28:01 +000031
32.. toctree::
33
34 tkinter.rst
35 tix.rst
36 scrolledtext.rst
37 turtle.rst
38 idle.rst
39 othergui.rst
40
Georg Brandlb19be572007-12-29 10:57:00 +000041.. Other sections I have in mind are
42 Tkinter internals
43 Freezing Tkinter applications
Georg Brandl8ec7f652007-08-15 14:28:01 +000044
45