Best GUI for Python

Hi, Cecil,

I want to use a GUI for Python. When searching I found (beside some
others) Tkinter and wxPython. From what I found it looks like Tkinter
is slightly better. What would be the pros/cons of these two? Would
there be a compelling reason to use another GUI?

Are you going to use Python 2 or Python 3?

Thank you.

···

On Sun, Apr 26, 2015 at 9:02 AM, Cecil Westerhof <Cecil@decebal.nl> wrote:

--
Cecil Westerhof
Senior Software Engineer
LinkedIn: http://www.linkedin.com/in/cecilwesterhof
--
https://mail.python.org/mailman/listinfo/python-list

It all depends what you need. In the past Tkinter was not native looking, i.e. pretty ugly on Windows, don't know how that is today.

You should probably also look a pySide: PySide · PyPI

I would suggest to just give them a try.

If you run into issues or have questions re wxPython then this is a good list to get help or use StackExchange.

Werner

···

On 4/26/2015 16:20, Igor Korot wrote:

Hi, Cecil,

On Sun, Apr 26, 2015 at 9:02 AM, Cecil Westerhof <Cecil@decebal.nl> wrote:

I want to use a GUI for Python. When searching I found (beside some
others) Tkinter and wxPython. From what I found it looks like Tkinter
is slightly better. What would be the pros/cons of these two? Would
there be a compelling reason to use another GUI?

The latest tkinter has a sub-module called ttk that makes it look much more native. However there really aren’t that many ttk widgets available, so I could only recommend that for limited interfaces if native looking is a need. Otherwise, go with wxPython or PySide/PyQt. Note that PySide development is basically dead except for bugfixes right now and is limited to Qt4 support only whereas PyQt has Qt5 support. Unfortunately, PyQt has a more restrictive license…

  • Mike
···

On Sunday, April 26, 2015 at 11:35:07 AM UTC-5, werner wrote:

On 4/26/2015 16:20, Igor Korot wrote:

Hi, Cecil,

On Sun, Apr 26, 2015 at 9:02 AM, Cecil Westerhof Ce...@decebal.nl wrote:

I want to use a GUI for Python. When searching I found (beside some

others) Tkinter and wxPython. From what I found it looks like Tkinter

is slightly better. What would be the pros/cons of these two? Would

there be a compelling reason to use another GUI?

It all depends what you need. In the past Tkinter was not native
looking, i.e. pretty ugly on Windows, don’t know how that is today.

You should probably also look a pySide: https://pypi.python.org/pypi/PySide

I would suggest to just give them a try.

If you run into issues or have questions re wxPython then this is a good
list to get help or use StackExchange.

Werner

You must also be mindful of the Qt (C++) license. Parts of Qt 5 are under LGPL v3, which to my understanding can be a show stopper for commercial, proprietary software wishing to use Qt (e.g. if you want to claim IP on your software, even if you didn’t modify Qt). I’ve heard all of Qt will likely come under LGPL v3 eventually.

···

On Monday, April 27, 2015 at 12:02:27 PM UTC-2:30, Mike Driscoll wrote:

On Sunday, April 26, 2015 at 11:35:07 AM UTC-5, werner wrote:

On 4/26/2015 16:20, Igor Korot wrote:

Hi, Cecil,

The latest tkinter has a sub-module called ttk that makes it look much more native. However there really aren’t that many ttk widgets available, so I could only recommend that for limited interfaces if native looking is a need. Otherwise, go with wxPython or PySide/PyQt. Note that PySide development is basically dead except for bugfixes right now and is limited to Qt4 support only whereas PyQt has Qt5 support. Unfortunately, PyQt has a more restrictive license…

This seems to be the myth of 2015. I keep hearing about it and I keep checking the licensing and it still says the same thing:
** Qt licensed under Enterprise, Professional and Indie Mobile licenses are
appropriate for development of proprietary/commercial software where you do not want to share any source code with third parties or otherwise
cannot comply with the terms of the GNU LGPL version 3 or the GNU LGPL version 2.1.**

See Qt Licensing | Qt 5.15 for more information.

  • Mike
···

On Thursday, April 30, 2015 at 9:35:03 AM UTC-5, Const wrote:

On Monday, April 27, 2015 at 12:02:27 PM UTC-2:30, Mike Driscoll wrote:

On Sunday, April 26, 2015 at 11:35:07 AM UTC-5, werner wrote:

On 4/26/2015 16:20, Igor Korot wrote:

Hi, Cecil,

The latest tkinter has a sub-module called ttk that makes it look much more native. However there really aren’t that many ttk widgets available, so I could only recommend that for limited interfaces if native looking is a need. Otherwise, go with wxPython or PySide/PyQt. Note that PySide development is basically dead except for bugfixes right now and is limited to Qt4 support only whereas PyQt has Qt5 support. Unfortunately, PyQt has a more restrictive license…

You must also be mindful of the Qt (C++) license. Parts of Qt 5 are under LGPL v3, which to my understanding can be a show stopper for commercial, proprietary software wishing to use Qt (e.g. if you want to claim IP on your software, even if you didn’t modify Qt). I’ve heard all of Qt will likely come under LGPL v3 eventually.

Yep, Qt is OK, but as stated earlier, PyQt is not. The usual interpretation is that any Python code importing PyQt becomes GPLed. That’s what motivated PySide development. It’s stalled because they lack manpower, and interest has faded because the PyQt licensing fees for commercial software is rather low, as those kind of things go (£350).

Best regards

Jérôme Laheurte

···

Le 30 avr. 2015 à 17:04, Mike Driscoll kyosohma@gmail.com a écrit :

On Thursday, April 30, 2015 at 9:35:03 AM UTC-5, Const wrote:

On Monday, April 27, 2015 at 12:02:27 PM UTC-2:30, Mike Driscoll wrote:

On Sunday, April 26, 2015 at 11:35:07 AM UTC-5, werner wrote:

On 4/26/2015 16:20, Igor Korot wrote:
Hi, Cecil,

The latest tkinter has a sub-module called ttk that makes it look much more native. However there really aren’t that many ttk widgets available, so I could only recommend that for limited interfaces if native looking is a need. Otherwise, go with wxPython or PySide/PyQt. Note that PySide development is basically dead except for bugfixes right now and is limited to Qt4 support only whereas PyQt has Qt5 support. Unfortunately, PyQt has a more restrictive license…

You must also be mindful of the Qt (C++) license. Parts of Qt 5 are under LGPL v3, which to my understanding can be a show stopper for commercial, proprietary software wishing to use Qt (e.g. if you want to claim IP on your software, even if you didn’t modify Qt). I’ve heard all of Qt will likely come under LGPL v3 eventually.

This seems to be the myth of 2015. I keep hearing about it and I keep checking the licensing and it still says the same thing:
**Qt licensed under Enterprise, Professional and Indie Mobile licenses are appropriate for development of proprietary/commercial software where you do not want to share any source code with third parties or otherwise cannot comply with the terms of the GNU LGPL version 3 or the GNU LGPL version 2.1. **

Yes, if you buy the commercial Enterprise, Professional, or Indie Mobile licenses then Qt is appropriate for proprietary/commercial software. My comment was in regards to the free version of Qt 5.4, which has parts covered under the LGPL v3 license. Those parts of the library you may not be able to use in your proprietary/commercial software if you want to protect your IP since the LGPL v3 has some restrictions on that. Furthermore, there’s a good chance all of Qt will come under the LGPL v3 over the next couple of years (as relayed to me from a Qt sales representative), at which point the free version of Qt X.X may not usable in proprietary software at all. (I’m not a lawyer though, so I could be wrong).

···

On Thursday, April 30, 2015 at 12:34:06 PM UTC-2:30, Mike Driscoll wrote:

On Thursday, April 30, 2015 at 9:35:03 AM UTC-5, Const wrote:

On Monday, April 27, 2015 at 12:02:27 PM UTC-2:30, Mike Driscoll wrote:

On Sunday, April 26, 2015 at 11:35:07 AM UTC-5, werner wrote:

On 4/26/2015 16:20, Igor Korot wrote:

Hi, Cecil,

The latest tkinter has a sub-module called ttk that makes it look much more native. However there really aren’t that many ttk widgets available, so I could only recommend that for limited interfaces if native looking is a need. Otherwise, go with wxPython or PySide/PyQt. Note that PySide development is basically dead except for bugfixes right now and is limited to Qt4 support only whereas PyQt has Qt5 support. Unfortunately, PyQt has a more restrictive license…

You must also be mindful of the Qt (C++) license. Parts of Qt 5 are under LGPL v3, which to my understanding can be a show stopper for commercial, proprietary software wishing to use Qt (e.g. if you want to claim IP on your software, even if you didn’t modify Qt). I’ve heard all of Qt will likely come under LGPL v3 eventually.

This seems to be the myth of 2015. I keep hearing about it and I keep checking the licensing and it still says the same thing:
** Qt licensed under Enterprise, Professional and Indie Mobile licenses are
appropriate for development of proprietary/commercial software where you do not want to share any source code with third parties or otherwise
cannot comply with the terms of the GNU LGPL version 3 or the GNU LGPL version 2.1.**

See http://doc.qt.io/qt-5/licensing.html for more information.