17db96d56Sopenharmony_ci.. _tkinter: 27db96d56Sopenharmony_ci 37db96d56Sopenharmony_ci********************************* 47db96d56Sopenharmony_ciGraphical User Interfaces with Tk 57db96d56Sopenharmony_ci********************************* 67db96d56Sopenharmony_ci 77db96d56Sopenharmony_ci.. index:: 87db96d56Sopenharmony_ci single: GUI 97db96d56Sopenharmony_ci single: Graphical User Interface 107db96d56Sopenharmony_ci single: Tkinter 117db96d56Sopenharmony_ci single: Tk 127db96d56Sopenharmony_ci 137db96d56Sopenharmony_ciTk/Tcl has long been an integral part of Python. It provides a robust and 147db96d56Sopenharmony_ciplatform independent windowing toolkit, that is available to Python programmers 157db96d56Sopenharmony_ciusing the :mod:`tkinter` package, and its extension, the :mod:`tkinter.tix` and 167db96d56Sopenharmony_cithe :mod:`tkinter.ttk` modules. 177db96d56Sopenharmony_ci 187db96d56Sopenharmony_ciThe :mod:`tkinter` package is a thin object-oriented layer on top of Tcl/Tk. To 197db96d56Sopenharmony_ciuse :mod:`tkinter`, you don't need to write Tcl code, but you will need to 207db96d56Sopenharmony_ciconsult the Tk documentation, and occasionally the Tcl documentation. 217db96d56Sopenharmony_ci:mod:`tkinter` is a set of wrappers that implement the Tk widgets as Python 227db96d56Sopenharmony_ciclasses. 237db96d56Sopenharmony_ci 247db96d56Sopenharmony_ci:mod:`tkinter`'s chief virtues are that it is fast, and that it usually comes 257db96d56Sopenharmony_cibundled with Python. Although its standard documentation is weak, good 267db96d56Sopenharmony_cimaterial is available, which includes: references, tutorials, a book and 277db96d56Sopenharmony_ciothers. :mod:`tkinter` is also famous for having an outdated look and feel, 287db96d56Sopenharmony_ciwhich has been vastly improved in Tk 8.5. Nevertheless, there are many other 297db96d56Sopenharmony_ciGUI libraries that you could be interested in. The Python wiki lists several 307db96d56Sopenharmony_cialternative `GUI frameworks and tools <https://wiki.python.org/moin/GuiProgramming>`_. 317db96d56Sopenharmony_ci 327db96d56Sopenharmony_ci.. toctree:: 337db96d56Sopenharmony_ci 347db96d56Sopenharmony_ci tkinter.rst 357db96d56Sopenharmony_ci tkinter.colorchooser.rst 367db96d56Sopenharmony_ci tkinter.font.rst 377db96d56Sopenharmony_ci dialog.rst 387db96d56Sopenharmony_ci tkinter.messagebox.rst 397db96d56Sopenharmony_ci tkinter.scrolledtext.rst 407db96d56Sopenharmony_ci tkinter.dnd.rst 417db96d56Sopenharmony_ci tkinter.ttk.rst 427db96d56Sopenharmony_ci tkinter.tix.rst 437db96d56Sopenharmony_ci idle.rst 447db96d56Sopenharmony_ci 457db96d56Sopenharmony_ci.. Other sections I have in mind are 467db96d56Sopenharmony_ci Tkinter internals 477db96d56Sopenharmony_ci Freezing Tkinter applications 48