| Georg Brandl | 116aa62 | 2007-08-15 14:28:22 +0000 | [diff] [blame] | 1 | .. _tkinter: | 
 | 2 |  | 
 | 3 | ********************************* | 
 | 4 | Graphical User Interfaces with Tk | 
 | 5 | ********************************* | 
 | 6 |  | 
 | 7 | .. index:: | 
 | 8 |    single: GUI | 
 | 9 |    single: Graphical User Interface | 
 | 10 |    single: Tkinter | 
 | 11 |    single: Tk | 
 | 12 |  | 
 | 13 | Tk/Tcl has long been an integral part of Python.  It provides a robust and | 
 | 14 | platform independent windowing toolkit, that is available to Python programmers | 
| Guilherme Polo | 5f23848 | 2009-01-28 14:41:10 +0000 | [diff] [blame] | 15 | using the :mod:`tkinter` package, and its extension, the :mod:`tkinter.tix` and | 
 | 16 | the :mod:`tkinter.ttk` modules. | 
| Georg Brandl | 116aa62 | 2007-08-15 14:28:22 +0000 | [diff] [blame] | 17 |  | 
| Georg Brandl | ac6060c | 2008-05-17 18:44:45 +0000 | [diff] [blame] | 18 | The :mod:`tkinter` package is a thin object-oriented layer on top of Tcl/Tk. To | 
 | 19 | use :mod:`tkinter`, you don't need to write Tcl code, but you will need to | 
| Georg Brandl | 116aa62 | 2007-08-15 14:28:22 +0000 | [diff] [blame] | 20 | consult the Tk documentation, and occasionally the Tcl documentation. | 
| Georg Brandl | ac6060c | 2008-05-17 18:44:45 +0000 | [diff] [blame] | 21 | :mod:`tkinter` is a set of wrappers that implement the Tk widgets as Python | 
| Georg Brandl | 116aa62 | 2007-08-15 14:28:22 +0000 | [diff] [blame] | 22 | classes.  In addition, the internal module :mod:`_tkinter` provides a threadsafe | 
 | 23 | mechanism which allows Python and Tcl to interact. | 
 | 24 |  | 
| Georg Brandl | ac6060c | 2008-05-17 18:44:45 +0000 | [diff] [blame] | 25 | :mod:`tkinter`'s chief virtues are that it is fast, and that it usually comes | 
| Georg Brandl | 48310cd | 2009-01-03 21:18:54 +0000 | [diff] [blame] | 26 | bundled with Python. Although its standard documentation is weak, good | 
 | 27 | material is available, which includes: references, tutorials, a book and | 
 | 28 | others. :mod:`tkinter` is also famous for having an outdated look and feel, | 
 | 29 | which has been vastly improved in Tk 8.5. Nevertheless, there are many other | 
 | 30 | GUI libraries that you could be interested in. For more information about | 
| Alexandre Vassalotti | 8ae3e05 | 2008-05-16 00:41:41 +0000 | [diff] [blame] | 31 | alternatives, see the :ref:`other-gui-packages` section. | 
| Georg Brandl | 116aa62 | 2007-08-15 14:28:22 +0000 | [diff] [blame] | 32 |  | 
 | 33 | .. toctree:: | 
| Georg Brandl | 48310cd | 2009-01-03 21:18:54 +0000 | [diff] [blame] | 34 |  | 
| Georg Brandl | 116aa62 | 2007-08-15 14:28:22 +0000 | [diff] [blame] | 35 |    tkinter.rst | 
| Guilherme Polo | 5f23848 | 2009-01-28 14:41:10 +0000 | [diff] [blame] | 36 |    tkinter.ttk.rst | 
| Georg Brandl | ac6060c | 2008-05-17 18:44:45 +0000 | [diff] [blame] | 37 |    tkinter.tix.rst | 
 | 38 |    tkinter.scrolledtext.rst | 
| Georg Brandl | 116aa62 | 2007-08-15 14:28:22 +0000 | [diff] [blame] | 39 |    idle.rst | 
 | 40 |    othergui.rst | 
 | 41 |  | 
| Christian Heimes | 5b5e81c | 2007-12-31 16:14:33 +0000 | [diff] [blame] | 42 | .. Other sections I have in mind are | 
 | 43 |    Tkinter internals | 
 | 44 |    Freezing Tkinter applications | 
| Georg Brandl | 116aa62 | 2007-08-15 14:28:22 +0000 | [diff] [blame] | 45 |  | 
 | 46 |  |