Tkinter: The good, the bad, and the ugly!

Octavian Rasnita orasnita at gmail.com
Wed Jan 19 10:41:41 EST 2011


From: "Adam Skutt" <askutt at gmail.com>
On Jan 18, 3:23 pm, "Octavian Rasnita" <orasn... at gmail.com> wrote:
> From: "Alexander Kapps" <alex.ka... at web.de>
>
> > Tkinter causes damage? Very bad damage? What are you talking about?
>
> I am talking about the fact that Python promotes Tkinter, and many beginners will start using it, and they will start creating applications with it, and they will learn to use it better than WxPython, and they will start believing that Tkinter is better because it is easier to use than WxPython, so they will start convincing others that Tkinter is the best, and they will start finding many reasons that show that Tkinter is better. And after this, they will say that they don't care about the real problems generated by GUIs like Tk.
> And a very big problem is that the applications that use Tk/GTK are not accessible for screen readers, so those applications will be just blank for people with visual impairments which need to use a screen reader.

> If you want functional accessibility support, you're going to have to
> write it in Python yourself, and get the accessibility manufacturers
> to support it.  All of the cross-platform toolkits have poor to non-
> existent accessibility support.  Accessibility issues aren't going to
> be fixed by going to a different GUI toolkit in the standard library.


Not true. WxPython uses wxWIDGETS which uses the default OS widgets which usually offer the accessibility features.
(At least under Windows, but most users that need accessibility use Windows anyway).


> The alternative is to fix the accessibility support issues in the
> underlying library, and Tk is no less amenable to that than
> wxWidgets.  If that's what you want, start coding then.  You have a
> long climb ahead of you.

The underlying libraries for Windows offer the necessary accessibility and WxPython uses it, but Tkinter uses Tk not those libraries.

> Accessibility will never be a particular good argument for switching
> toolkits.  All of the cross-platform offerings with Python bindings
> are far too broken to be even remotely interesting.


WxPython is not perfect but most of the objects it offers are accessible so this is not true. Only Tk and GTK are bad.

> Why do we like the portable GUIS and don't really like the native interfaces that don't work on other platforms?
> Because we want our programs to be usable by as many people as possible. Well, some platforms render the output as sound and Tkinter are not "portable" on those platforms (screen readers).

> Or we have cross-platform support as a requirement and no desire to
> develop the GUI interface three times over.  Hence the continued
> popularity of Java GUIs.


Java GUIS are accessible. Maybe that's the reason.
SWT offers the same kind of accessibility as WxPython and for SWING there is Java Access Bridge. So they are not as accessible as the native Windows GUI objects, but they are accessible, unlike Tk and GTK which are not.

Octavian




More information about the Python-list mailing list