Yet another GUI toolkit question...

Chris Mellon arkanes at gmail.com
Sat Feb 11 13:20:48 EST 2006


On 2/11/06, Kevin Walzer <sw at wordtech-software.com> wrote:
> Chris Mellon wrote:
>
> >
> > If you're planning on selling an application, especially to OS X
> > users, then Tk is absolutely out of the question. It doesn't have even
> > the slightest resemblence to native behavior, and lacks the polish and
> > flash that occasionally lets a non-native app get away with it. Given
> > the limits you've stated, I believe your only options are wxPython and
> > writting 2 guis using PyWin/PyObjC. The second option requires
> > knowledge of the native tool sets for the respective platforms, so if
> > you don't have that I can only suggest wxPython. If you're used to Tk
> > you will face a learning curve, and you will need to look for or write
> > replacements for the custom widgets you've been using.
> >
>
> Do these screenshots look "non-native" to you?

Yes, actually.  But thats not the point, and a trivial dialog isn't
enough to really judge Tile anyway.

>
> http://www.wordtech-software.com/ireveal-mac.png
> http://www.wordtech-software.com/ireveal-windows.png
> http://www.wordtech-software.com/ireveal-linux.png
>
> This application was developed in Tcl/Tk.
>
> I think Tkinter is lagging behind Tk itself in terms of its advances
> with theming and native look and feel, especially on OS X and Win XP.
> Certainly a lot of Python developers don't seem well-informed about the
> work that has been done to bring Tk back into the modern age. The
> wrappers I mentioned above (some at a site that is offline but should be
> back online shortly, I'm told) are bleeding-edge in Tkinter terms but
> reflect work that started a couple of years ago in Tk. (The extension is
> called "Tile" and will be part of the Tk core when it's released at v. 8.5).
>
> That doesn't mean wxPython is out of the question. What I'm trying to
> figure out is whether I will be up and running faster with Tkinter +
> Tile (leaving me mainly to improve my proficiency with Python itself and
> translate Tk into a Python idiom) or whether I should learn wxPython,
> with its vastly different GUI paradigm, as well as Python.
>

That depends almost totally on you and your skills, doesn't it? I'm an
unabashed fan of wxPython, so naturally I lean that way, but I
wouldn't deny that is has a learning curve. It's famous "C++ like API"
has seen vast improvement in the last few releases, by the way, and is
much more pythonic than a lot of people seem to believe  - no more
from wxPython import *, for example. I certainly find it's API more
pythonic than Tkinters.

> If Tkinter + Tile + Bwidgets + Tablelist does the job, as I think it may
> (and as it does with regular Tcl/Tk), then I will probably stick with
> that. And perhaps I can then contribute some documentation somewhere on
> how to use the Tile widgets in a Tkinter application, complete with
> screen shots and working code for others to use. Such documentation is
> sorely lacking right now.
>
> The vast range of available GUI toolkits is one thing that partially
> offsets Python's many virtues as a programming language. I realize I was
> stepping into a fire swamp by even broaching the question. However, the
> application I'm envisioning (accessing web services from a desktop GUI)
> will benefit from the abundant Python libraries/wrappers that have
> already been written, which are mostly lacking (or which would require
> me to roll my own) in Tcl.
>

I can't possibly see how an available range of GUI toolkits is a
detriment to a *language*. I can see (but don't neccesarily agree)
that is detrimental to a desktop environment or whatever, but not a
language. By that standard C is the worst language to ever exist, C++
only marginally better, and stuff like Visual FoxPro the best of all.

>
>
> --
> Kevin Walzer
> iReveal: File Search Tool
> http://www.wordtech-software.com
>



More information about the Python-list mailing list