Graphical User Interfaces with 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
using the tkinter
package, and its extension, the tkinter.tix
and
the tkinter.ttk
modules.
The tkinter
package is a thin object-oriented layer on top of Tcl/Tk. To
use tkinter
, you don’t need to write Tcl code, but you will need to
consult the Tk documentation, and occasionally the Tcl documentation.
tkinter
is a set of wrappers that implement the Tk widgets as Python
classes.
tkinter
’s chief virtues are that it is fast, and that it usually comes
bundled with Python. Although its standard documentation is weak, good
material is available, which includes: references, tutorials, a book and
others. 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. The Python wiki lists several
alternative GUI frameworks and tools.
tkinter
— Python interface to Tcl/Tktkinter.colorchooser
— Color choosing dialogtkinter.font
— Tkinter font wrapper- Tkinter Dialogs
tkinter.simpledialog
— Standard Tkinter input dialogstkinter.filedialog
— File selection dialogs- Native Load/Save Dialogs
askopenfile()
askopenfiles()
asksaveasfile()
askopenfilename()
askopenfilenames()
asksaveasfilename()
askdirectory()
Open
SaveAs
Directory
FileDialog
FileDialog.cancel_command()
FileDialog.dirs_double_event()
FileDialog.dirs_select_event()
FileDialog.files_double_event()
FileDialog.files_select_event()
FileDialog.filter_command()
FileDialog.get_filter()
FileDialog.get_selection()
FileDialog.go()
FileDialog.ok_event()
FileDialog.quit()
FileDialog.set_filter()
FileDialog.set_selection()
LoadFileDialog
SaveFileDialog
- Native Load/Save Dialogs
tkinter.commondialog
— Dialog window templates
tkinter.messagebox
— Tkinter message promptstkinter.scrolledtext
— Scrolled Text Widgettkinter.dnd
— Drag and drop supporttkinter.ttk
— Tk themed widgets- Using Ttk
- Ttk Widgets
- Widget
- Combobox
- Spinbox
- Notebook
- Progressbar
- Separator
- Sizegrip
- Treeview
- Options
- Item Options
- Tag Options
- Column Identifiers
- Virtual Events
- ttk.Treeview
Treeview
Treeview.bbox()
Treeview.get_children()
Treeview.set_children()
Treeview.column()
Treeview.delete()
Treeview.detach()
Treeview.exists()
Treeview.focus()
Treeview.heading()
Treeview.identify()
Treeview.identify_row()
Treeview.identify_column()
Treeview.identify_region()
Treeview.identify_element()
Treeview.index()
Treeview.insert()
Treeview.item()
Treeview.move()
Treeview.next()
Treeview.parent()
Treeview.prev()
Treeview.reattach()
Treeview.see()
Treeview.selection()
Treeview.selection_set()
Treeview.selection_add()
Treeview.selection_remove()
Treeview.selection_toggle()
Treeview.set()
Treeview.tag_bind()
Treeview.tag_configure()
Treeview.tag_has()
Treeview.xview()
Treeview.yview()
- Ttk Styling
tkinter.tix
— Extension widgets for Tk- IDLE