| 
									
										
										
										
											2007-08-15 14:28:22 +00:00
										 |  |  | .. _tkinter:
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | *********************************
 | 
					
						
							|  |  |  | Graphical User Interfaces with Tk
 | 
					
						
							|  |  |  | *********************************
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | .. index::
 | 
					
						
							|  |  |  |    single: GUI
 | 
					
						
							|  |  |  |    single: Graphical User Interface
 | 
					
						
							|  |  |  |    single: Tkinter
 | 
					
						
							|  |  |  |    single: Tk
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | Tk/Tcl has long been an integral part of Python.  It provides a robust and
 | 
					
						
							|  |  |  | platform independent windowing toolkit, that is available to Python programmers
 | 
					
						
							| 
									
										
										
										
											2009-01-28 14:41:10 +00:00
										 |  |  | using the :mod:`tkinter` package, and its extension, the :mod:`tkinter.tix` and
 | 
					
						
							|  |  |  | the :mod:`tkinter.ttk` modules.
 | 
					
						
							| 
									
										
										
										
											2007-08-15 14:28:22 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2008-05-17 18:44:45 +00:00
										 |  |  | The :mod:`tkinter` package is a thin object-oriented layer on top of Tcl/Tk. To
 | 
					
						
							|  |  |  | use :mod:`tkinter`, you don't need to write Tcl code, but you will need to
 | 
					
						
							| 
									
										
										
										
											2007-08-15 14:28:22 +00:00
										 |  |  | consult the Tk documentation, and occasionally the Tcl documentation.
 | 
					
						
							| 
									
										
										
										
											2008-05-17 18:44:45 +00:00
										 |  |  | :mod:`tkinter` is a set of wrappers that implement the Tk widgets as Python
 | 
					
						
							| 
									
										
										
										
											2007-08-15 14:28:22 +00:00
										 |  |  | classes.  In addition, the internal module :mod:`_tkinter` provides a threadsafe
 | 
					
						
							|  |  |  | mechanism which allows Python and Tcl to interact.
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2008-05-17 18:44:45 +00:00
										 |  |  | :mod:`tkinter`'s chief virtues are that it is fast, and that it usually comes
 | 
					
						
							| 
									
										
										
										
											2009-01-03 21:18:54 +00:00
										 |  |  | bundled with Python. Although its standard documentation is weak, good
 | 
					
						
							|  |  |  | material is available, which includes: references, tutorials, a book and
 | 
					
						
							|  |  |  | others. :mod:`tkinter` is also famous for having an outdated look and feel,
 | 
					
						
							|  |  |  | which has been vastly improved in Tk 8.5. Nevertheless, there are many other
 | 
					
						
							|  |  |  | GUI libraries that you could be interested in. For more information about
 | 
					
						
							| 
									
										
											  
											
												Merged revisions 63066-63076,63079,63081-63085,63087-63097,63099,63101-63104 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
  r63066 | georg.brandl | 2008-05-11 10:56:04 -0400 (Sun, 11 May 2008) | 2 lines
  #2709 followup: better description of Tk's pros and cons.
........
  r63067 | georg.brandl | 2008-05-11 11:05:13 -0400 (Sun, 11 May 2008) | 2 lines
  #1326: document and test zipimporter.archive and zipimporter.prefix.
........
  r63068 | georg.brandl | 2008-05-11 11:07:39 -0400 (Sun, 11 May 2008) | 2 lines
  #2816: clarify error messages for EOF while scanning strings.
........
  r63069 | georg.brandl | 2008-05-11 11:17:41 -0400 (Sun, 11 May 2008) | 3 lines
  #2787: Flush stdout after writing test name, helpful when running
  hanging or long-running tests. Patch by Adam Olsen.
........
  r63070 | georg.brandl | 2008-05-11 11:20:16 -0400 (Sun, 11 May 2008) | 3 lines
  #2803: fix wrong invocation of heappush in seldom-reached code.
  Thanks to Matt Harden.
........
  r63073 | benjamin.peterson | 2008-05-11 12:38:07 -0400 (Sun, 11 May 2008) | 2 lines
  broaden .bzrignore
........
  r63076 | andrew.kuchling | 2008-05-11 15:15:52 -0400 (Sun, 11 May 2008) | 1 line
  Add message to test assertion
........
  r63083 | andrew.kuchling | 2008-05-11 16:08:33 -0400 (Sun, 11 May 2008) | 1 line
  Try setting HOME env.var to fix test on Win32
........
  r63092 | georg.brandl | 2008-05-11 16:53:55 -0400 (Sun, 11 May 2008) | 2 lines
  #2809 followup: even better split docstring.
........
  r63094 | georg.brandl | 2008-05-11 17:03:42 -0400 (Sun, 11 May 2008) | 4 lines
  - #2250: Exceptions raised during evaluation of names in rlcompleter's
    ``Completer.complete()`` method are now caught and ignored.
........
  r63095 | georg.brandl | 2008-05-11 17:16:37 -0400 (Sun, 11 May 2008) | 2 lines
  Clarify os.strerror()s exception behavior.
........
  r63097 | georg.brandl | 2008-05-11 17:34:10 -0400 (Sun, 11 May 2008) | 2 lines
  #2535: remove duplicated method.
........
  r63104 | alexandre.vassalotti | 2008-05-11 19:04:27 -0400 (Sun, 11 May 2008) | 2 lines
  Moved the Queue module stub in lib-old.
........
											
										 
											2008-05-16 00:41:41 +00:00
										 |  |  | alternatives, see the :ref:`other-gui-packages` section.
 | 
					
						
							| 
									
										
										
										
											2007-08-15 14:28:22 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | .. toctree::
 | 
					
						
							| 
									
										
										
										
											2009-01-03 21:18:54 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2007-08-15 14:28:22 +00:00
										 |  |  |    tkinter.rst
 | 
					
						
							| 
									
										
										
										
											2009-01-28 14:41:10 +00:00
										 |  |  |    tkinter.ttk.rst
 | 
					
						
							| 
									
										
										
										
											2008-05-17 18:44:45 +00:00
										 |  |  |    tkinter.tix.rst
 | 
					
						
							|  |  |  |    tkinter.scrolledtext.rst
 | 
					
						
							| 
									
										
										
										
											2007-08-15 14:28:22 +00:00
										 |  |  |    idle.rst
 | 
					
						
							|  |  |  |    othergui.rst
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
											  
											
												Merged revisions 59605-59624 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
  r59606 | georg.brandl | 2007-12-29 11:57:00 +0100 (Sat, 29 Dec 2007) | 2 lines
  Some cleanup in the docs.
........
  r59611 | martin.v.loewis | 2007-12-29 19:49:21 +0100 (Sat, 29 Dec 2007) | 2 lines
  Bug #1699: Define _BSD_SOURCE only on OpenBSD.
........
  r59612 | raymond.hettinger | 2007-12-29 23:09:34 +0100 (Sat, 29 Dec 2007) | 1 line
  Simpler documentation for itertools.tee().  Should be backported.
........
  r59613 | raymond.hettinger | 2007-12-29 23:16:24 +0100 (Sat, 29 Dec 2007) | 1 line
  Improve docs for itertools.groupby().  The use of xrange(0) to create a unique object is less obvious than object().
........
  r59620 | christian.heimes | 2007-12-31 15:47:07 +0100 (Mon, 31 Dec 2007) | 3 lines
  Added wininst-9.0.exe executable for VS 2008
  Integrated bdist_wininst into PCBuild9 directory
........
  r59621 | christian.heimes | 2007-12-31 15:51:18 +0100 (Mon, 31 Dec 2007) | 1 line
  Moved PCbuild directory to PC/VS7.1
........
  r59622 | christian.heimes | 2007-12-31 15:59:26 +0100 (Mon, 31 Dec 2007) | 1 line
  Fix paths for build bot
........
  r59623 | christian.heimes | 2007-12-31 16:02:41 +0100 (Mon, 31 Dec 2007) | 1 line
  Fix paths for build bot, part 2
........
  r59624 | christian.heimes | 2007-12-31 16:18:55 +0100 (Mon, 31 Dec 2007) | 1 line
  Renamed PCBuild9 directory to PCBuild
........
											
										 
											2007-12-31 16:14:33 +00:00
										 |  |  | .. Other sections I have in mind are
 | 
					
						
							|  |  |  |    Tkinter internals
 | 
					
						
							|  |  |  |    Freezing Tkinter applications
 | 
					
						
							| 
									
										
										
										
											2007-08-15 14:28:22 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | 
 |