People still using Tkinter?
Kevin Walzer
kw at codebykevin.com
Sat May 10 11:31:37 EDT 2008
Kenneth McDonald wrote:
> Any guesses as to how many people are still using Tkinter? And can
> anyone direct me to good, current docs for Tkinter?
>
> Thanks,
> Ken
I develop Tk applications commercially on Mac OS X, using Tcl and
Python. Here's a screenshot of my Python app:
http://www.codebykevin.com/phynchronicity-running.png
This app is built on Python 2.5.1 and Tk 8.5.0. Tk 8.5 has a huge number
of improvements over older versions of Tk:
http://www.tkdocs.com/resources/backgrounder.html
Most importantly, Tk 8.5 has a themed widget set that allows for
platform-native appearance on Windows and Mac (not emulated, but hooking
into system API's). The themed widget set also adds a lot of new
widgets, such as combobox, tree, and others. The older widget set is
still available as well and they can be freely matched. Tk also has a
lot of lightweight, script-level widget libraries that can also enhance
the appearance and usability of your app.
My own app uses widgets from Tk's traditional set, the new Tile/ttk set,
the Tabelist widget, and the BWidget widget library. It uses the
following Python wrappers for these widgets:
http://tkinter.unpy.net/wiki/TileWrapper
http://tkinter.unpy.net/wiki/TableListTileWrapper
http://tkinter.unpythonic.net/bwidget/
It also uses a few private wrappers/custom widgets.
In addition to the Python-specifc resources that others have provided,
here's a new site that documents the latest-and-greatest Tk techniques,
including Tile/ttk:
http://www.tkdocs.com/
The developer of this site is mainly interest in Tcl and Ruby, so
examples of those are provided--I may provide some Python examples at
some point. But there should be enough code snippets there for you to
get started, especially if you already have some experience with
Tk/Tkinter.
Tk still has some limitations, including a lack of cross-platform
printing support (the canvas widget generates postscript, but that's not
enough anymore) and an incomplete cross-platform drag-and-drop mechanism
(works fine on Windows, it's buggy on *NIx because Xdnd is so
inconsistent, and it was never developed for OS X). If you absolutely
need these features, look at wxPython or PyQt. But coming to Python from
a Tcl background, I'm very comfortable with Tk--it is lightweight,
extremely flexible, and (as I hope you can see from my screenshot) it's
possible to do sophisticated user interfaces with it. It fits my brain
much better than wxPython, for instance. And the long effort by Tk's
developers to modernize its appearance has finally paid off, I think.
Hope that helps,
Kevin
--
Kevin Walzer
Code by Kevin
http://www.codebykevin.com
More information about the Python-list
mailing list