Python has many GUI toolkits. If I understand correctly, these toolkits typically take on the responsibility of rendering their own widgets (rather than relying on the operating system). This achieves cross-platform support at the cost of having widgets that don't necessarily look, feel and behave exactly like their native counterparts. Does Python have a GUI toolkit that is cross-platform and takes advantage of each system's native widgets?
According to GUI Programming in Python, there are at least two candidates:
Unfortunately, this library seems to have disappeared. It's link now redirects to Icy Labs, a company that "designs and distributes components and devices for electronics and robotics development" (???).
This is a port of the SWT library for Java (which I am already familiar with). This library doesn't feel like Python (for example, it retains the set*
and get*
methods that are common in Java). Therefore, I am curious to know if there is a more authoritative library that meets my needs.
Is wxWidgets an option? As far as I know, it integrates with whatever the OS has to offer - win32 on windows, gtk on Linux and, I think, Aqua on OSX.
What about Qt?
And it's attendant wrapper, PyQt? http://en.wikipedia.org/wiki/PyQt
Qt for the most part looks native. I don't think you'll ever find a cross-platform toolkit that is uses native widgets exclusively and still be cross-platform. Those goals are to some extent mutually exclusive.
pyside LGPL bindings for qt. Note there is also PyQt which is GPL or paid for closed source use.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With