473,378 Members | 1,523 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,378 software developers and data experts.

wxPython vs. pyQt

I've narrowed down my toolkit selection for my project to wxPython and
pyQt, and now i'd like to hear any opinions, war stories, peeves, etc,
about them, particularly from anyone who's used _both_toolkits_. I'm
only mildly interested in the IDEs and UI designers for each, as i
want to do as much as i can in just Xemacs and xterm. Feel free to
rant, rave, pontificate, whatever.

t.i.a.,
E
Jul 18 '05 #1
17 11792

I have just started using wxPython. I selected it over pyQT for
licensing
reasons. I'm no gui app expert. But that said, I've found the toolkit
approachable and the user community very helpful.

Scott

On Mar 16, 2005, at 9:11 PM, eh******@kaustinr.r.com wrote:
I've narrowed down my toolkit selection for my project to wxPython and
pyQt, and now i'd like to hear any opinions, war stories, peeves, etc,
about them, particularly from anyone who's used _both_toolkits_. I'm
only mildly interested in the IDEs and UI designers for each, as i
want to do as much as i can in just Xemacs and xterm. Feel free to
rant, rave, pontificate, whatever.

t.i.a.,
E
--
http://mail.python.org/mailman/listinfo/python-list


Jul 18 '05 #2
I used to be a wxPython lover, but it was mainly due to the crappy PyQt
licensing terms, rather than any merits of wx (although I like the
native LnF).

After trying to do a large-ish project using wxPython, I found that I
was limited by the lack of widgets and the layout system.

My latest project was in PyQt, after Trolltech announced that Qt4 will
have a GPL version for Windows (and Riverbank said they will make a
PyQt to go with it eventually).

I usually hate visual GUI IDEs, but I found QtDesigner to be a real
asset, much better than wxDesigner or VisualStudio. The threading
implementation also seems superior (easier?) to Python's own too, and
making custom widgets is easy enough, even with a Python wrapper.

Also, the Cygwin guys have ported the GPL/Linux Qt to Windows, so you
can use that for Qt3.3 until Trolltech come up with Qt4.

Links:
http://kscraft.sourceforge.net/conve...-install.xhtml
http://kde-cygwin.sourceforge.net/qt3-win32/
http://www.pycs.net/lateral/stories/27.html

Jul 18 '05 #3
eh******@kaustinr.r.com wrote:
I've narrowed down my toolkit selection for my project to wxPython and
pyQt, and now i'd like to hear any opinions, war stories, peeves, etc,
about them, particularly from anyone who's used _both_toolkits_. I'm
only mildly interested in the IDEs and UI designers for each, as i
want to do as much as i can in just Xemacs and xterm. Feel free to
rant, rave, pontificate, whatever.

I have used both. I find PyQT is vastly superior than wxPython for a number of
reasons, including overall better design of the library, total flexibility and
orthogonality of provided features, incredible portability. I would suggest
wxPython only if you cannot meet PyQt license requirements (and this is going
to change soon, since Qt4 will have a GPL version for Windows too).
--
Giovanni Bajo
Jul 18 '05 #4
tc
Has anyone compiled binaries for qt/pyqt/eric3. i'd really like to try
it. at the moment i work with wxWindows and BoaConstructor which i'm
actually not so happy with. design of gui's with wx is not very
efficient...

so is there already a binary for qt/pyqt/eric3 available or when can i
excpect qt4 to be released?
tc

Jul 18 '05 #5

tc wrote:
Has anyone compiled binaries for qt/pyqt/eric3. i'd really like to try it. at the moment i work with wxWindows and BoaConstructor which i'm
actually not so happy with. design of gui's with wx is not very
efficient...

so is there already a binary for qt/pyqt/eric3 available or when can i excpect qt4 to be released?
tc


Hi,
If you're on a linux fedora3/suse 9.2 platform you can give a try to:

pyvm.sourceforge.net
regards,
antonio

Jul 18 '05 #6
tc wrote:
Has anyone compiled binaries for qt/pyqt/eric3. i'd really like to try
it. at the moment i work with wxWindows and BoaConstructor which i'm
actually not so happy with. design of gui's with wx is not very
efficient...

so is there already a binary for qt/pyqt/eric3 available or when can i
excpect qt4 to be released?
tc


http://kde-redhat.sourceforge.net/

apt/yum/etc. repositories

qt-3.3.3-16.3.3.kde.i386.rpm
sip-4.1.1-0.2.3.kde.i386.rpm
PyQt-3.13-2.0.3.kde.i386.rpm
PyKDE-3.11.3-0.5.3.kde.i386.rpm
qscintilla-1.4-0.1.3.kde.i386.rpm
eric-3.6.1-0.fdr.1.3.i386.rpm

and more....


Jul 18 '05 #7
"so is there already a binary for qt/pyqt/eric3 available or when can i
excpect qt4 to be released? "

I think that pyqt4 is going to be a long way off, obviously further
away than qt4.

i have compiled qt 3.3.3/pyqt 3.1.3 using mingw/vcc6 for windows using
the instructions i linked to in my previous post, both for python 2.3
and 2.4, when the kde-cygwin guys finish porting qt 3.3.4, i'm going to
have a go at pyqt 3.1.4

Jul 18 '05 #8
RM
Of course, the licensing terms may still be too restrictive for those
that want to create comercial closed source applications and can't
afford the comercial license of Qt. That is why, for many, wxPython
will remain the preferred choice.

Being that you are inclined use Xemacs and xterm for your development,
I don't think you will have too much trouble with either one.
Currently, I think the choice between Qt and wx boils down to this:

Type of app - Choice - Reason

GPL or Company use only app - Qt - It is easier, cleaner, etc.
Commercial Closed Source - Qt - Don't mind the license cost.
Any type - wx - It is free.

Other (lesser, I think) considerations, however, may bee the appearance
of the app. On linux/KDE you may prefer the Qt native look. On
Linux/GNOME you may prefer wx's GTK native look. On Windows, wx is
completely native, while I can't speak for Qt's look since I have never
seen it, but I know it is not completely native looking.

Jul 18 '05 #9

"RM" <ny**********@yahoo.com> wrote in message
news:11**********************@f14g2000cwb.googlegr oups.com...
Of course, the licensing terms may still be too restrictive for those
that want to create comercial closed source applications and can't
afford the comercial license of Qt. That is why, for many, wxPython
will remain the preferred choice.

Being that you are inclined use Xemacs and xterm for your development,
I don't think you will have too much trouble with either one.
Currently, I think the choice between Qt and wx boils down to this:

Type of app - Choice - Reason

GPL or Company use only app - Qt - It is easier, cleaner, etc.
Commercial Closed Source - Qt - Don't mind the license cost.
Any type - wx - It is free.

Other (lesser, I think) considerations, however, may bee the appearance
of the app. On linux/KDE you may prefer the Qt native look. On
Linux/GNOME you may prefer wx's GTK native look. On Windows, wx is
completely native, while I can't speak for Qt's look since I have never
seen it, but I know it is not completely native looking.


I use Qt under Windows and the look and feel is completely native.
The best thing to do is to judge for yourself. Trolltech's website has
example screenshots of Qt applications under X11, Windows and Mac OS X.

For example 3rd party apps, look at:
http://www.trolltech.com/products/hotnew/index.html
and http://www.trolltech.com/success/index.html

For Trolltech's Qt tools, look at:
http://www.trolltech.com/screenshots/tools.html

Personally for ease of use Qt is the way to go. I'm really looking forward
to Qt 4 coming out, and then sometime later PyQt 4. Then I'll be able to
develop with my favourite APIs (Qt, OpenGL, and OpenSceneGraph) under a
completely Python environment - heaven from a development perspective.

Mike.
Jul 18 '05 #10
On Sat, 19 Mar 2005 15:55:23 +1100, Mike P. <no*****@thanks.com> wrote:
Personally for ease of use Qt is the way to go. I'm really looking forward
to Qt 4 coming out, and then sometime later PyQt 4. Then I'll be able to
develop with my favourite APIs (Qt, OpenGL, and OpenSceneGraph) under a
completely Python environment - heaven from a development perspective.


I totally agree.

For those who don't know, Qt 4 on Windows will be available under GPL.
So, you can write a (GPLed) app using Qt 4 and run it on Windows, Mac,
Linux and even embedded!

The announcement is at
http://www.trolltech.com/newsroom/an.../00000192.html

I hope the PyQt guys are on top of this ;)

Regards,
--
Swaroop C H
Blog: http://www.swaroopch.info
Book: http://www.byteofpython.info
Jul 18 '05 #11
eh******@kaustinr.r.com napisa³(a):
I've narrowed down my toolkit selection for my project to wxPython and
pyQt, and now i'd like to hear any opinions, war stories, peeves, etc,
about them, particularly from anyone who's used _both_toolkits_. I'm
only mildly interested in the IDEs and UI designers for each, as i
want to do as much as i can in just Xemacs and xterm. Feel free to
rant, rave, pontificate, whatever.


There's no clear winner.

On Windows wx runs fast, looks good and is stable enough to use in
production. On X11 wx is dog slow, looks good only if you use GTK-based
environment (GNOME, XFCE) and crashes randomly on my machine. Oh, and is
LGPL (basically), that's good for those scared by GPL.

On Windows Qt runs reasonably, looks reasonably and is rock solid. On
X11 Qt is lightning fast, looks good only if you have installed part of
KDE and is rock solid. You can buy commercial licenses for both Qt and
PyQt or go free with GPL version. Until Qt4 come later this year, you
must use commercial version.

I prefer Qt, but now in my case it's a matter of personal taste.

--
Jarek Zgoda
http://jpa.berlios.de/ | http://www.zgodowie.org/
Jul 18 '05 #12
eh******@kaustinr.r.com wrote:
I've narrowed down my toolkit selection for my project to wxPython and
pyQt, and now i'd like to hear any opinions, war stories, peeves, etc,
about them, particularly from anyone who's used _both_toolkits_. I'm
only mildly interested in the IDEs and UI designers for each, as i
want to do as much as i can in just Xemacs and xterm. Feel free to
rant, rave, pontificate, whatever.


I used both toolkits in projects under linux (mostly for inhouse database
applications and the like). First experiences with tkinter and it's look
within linux brought me to the decision to try others. Although not
necessary that time, being able to use it under windows was appealing.
Because of the Qt license, I decided to start with wx, but several issues
with it turned my head around soon thereafter.

Here is what I still remember:
- inconsistent api (for historical and conceptual reasons)
- solutions to some problems weren't always obvious
- somewhat opaque documentation
- painfully slow start of wx applications
- gui layering makes it hard to locate a problem domain inside the tk
- widgets behave different on different architectures/base libs
- patched swig needed for full build/own extensions
- tools (gui builder) weren't appealing
- printing a single fax page image resulted in a ~50MB PS job (because it
wasn't possible to prevent the conversation to a 24 bit image)
- spurious gtk error messages

While in PyQt world, I found these advantages:
+ conceptually vastly superior
+ powerful api/widgets/features
+ fast as hell due to the efficient binding of a quite efficient lib
+ cool tools, that are unicode/translation aware
+ very efficient programming environment/unbeatable productivity

While this sounds like the average sales talk, I will try to backup these
claims a bit:
Phil Thompson does a great job with sip: since V.4, it's able to wrap c++
libs directly without any additional "trampoline" modules, most other
wrappers (includding sip 3) produces. It creates a very thin layer, which
results in a tight and efficient binding. Besides all the necessary
essential work there, it also realizes lazy binding in order to speed up
loading big libs like qt once more. Qt itself is a good example of a
mostly well thought out toolkit including a quite consistent api, usable
documentation and powerful tools (designer, assistant, linguist), which
PyQt fully deploys into the wonderful world of our favorite programming
language.

Accompanied by eric, itself a great example on how far you can go with
PyQt and limited human resources (unfortunately), it is big fun to get
some real work done. The power of eric is largely based on qscintilla,
Phil's Qt port of the scintilla editor component besides PyQt. For the
scientists out there, there's also a cool extension lib available: PyQwt.

On the down side let me note:
- due to the tight coupling of Qt, PyQt inherits one of Qt's few down
sides, which boils down to: garbage in -> (probably) crash, but well,
we use a real operating system for a reason, don't we ;-)
- to get most from the documentation, one gets to a c++ -> python
converter over time (trains the eye to skip the right portions)..

Conclusion: PyQt is the most underrated python gui toolkit out there, but
beware: once you get infected, your brain will tend to refuse to work
with more long winded toolkits. It allowed me to do things in hours,
which literally took weeks with tkinter, while still running quicker,
looking and feeling better, providing more features and a noticable
higher user satisfaction: IOW, much more fun.

Well-I'm-biased-ly-y'rs,
Pete
Jul 18 '05 #13
Hans-Peter Jansen wrote:
..
While in PyQt world, I found these advantages:
+ conceptually vastly superior
+ powerful api/widgets/features
+ fast as hell due to the efficient binding of a quite efficient lib
+ cool tools, that are unicode/translation aware
+ very efficient programming environment/unbeatable productivity

While this sounds like the average sales talk, I will try to backup these
claims a bit:
..


I've been a wx user since around 1999 and overall I like it. It annoys
me a *lot* sometimes, but as Qt was always prohibitively expensive for
commercial development, it was the only real option.

The key question from my point of view is: can I write commercial
sell-if-I-want-to applications using Qt? If it is GPL, then I guess the
answer is 'no'?

Andrew
Jul 18 '05 #14
Swaroop C H wrote:
For those who don't know, Qt 4 on Windows will be available under GPL.
So, you can write a (GPLed) app using Qt 4 and run it on Windows, Mac,
Linux and even embedded!

Yes, but the FAQ implies to me that they really don't want to encourage
people to use the GPL:
Q: I want to dual license my software too! That means I can use the
Open Source edition for development, right?

A: No. In order to write software that will be sold or licensed
commercially, in addition to open source, all of your programmers will
need a commercial license from the outset of the development phase.

If you use the Open Source edition of Qt, you can only publish the
software under the GPL. Trolltech's commercial license terms do not
allow you to develop any proprietary software using the Open Source
edition.


If I read this correctly, if you use the GPL version of QT to do any
development work you can never release any of the code under anything other
than the GPL, not even by retrospectively paying Trolltech all the license
fees they would have been due for it to be a commercial development.

Also, if you have bought your commercial license, you cannot benefit from
the pool of existing GPL code by approaching the original author and
arranging to pay them for a non-GPL license for use within your product.
Jul 18 '05 #15
Andrew E <an****@nospam.com> writes:
Hans-Peter Jansen wrote:
..
While in PyQt world, I found these advantages:
+ conceptually vastly superior
+ powerful api/widgets/features
+ fast as hell due to the efficient binding of a quite efficient lib
+ cool tools, that are unicode/translation aware
+ very efficient programming environment/unbeatable productivity
While this sounds like the average sales talk, I will try to backup
these
claims a bit:
> ..


I've been a wx user since around 1999 and overall I like it. It annoys
me a *lot* sometimes, but as Qt was always prohibitively expensive for
commercial development, it was the only real option.

The key question from my point of view is: can I write commercial
sell-if-I-want-to applications using Qt? If it is GPL, then I guess
the answer is 'no'?


Yes, you can write commercial apps. It's multi-licensed (commercial,
GPL, etc.): you get to pick the license(s) you want to use. Read the
licenses.

PyQt's licensing follows Qt's very closely, so no real complications
there. Note PyQt (including a Qt license for use only with PyQt) is
actually far cheaper than Qt alone (if you buy Blackadder).
John
Jul 18 '05 #16
John J. Lee wrote:
The key question from my point of view is: can I write commercial
sell-if-I-want-to applications using Qt? If it is GPL, then I guess
the answer is 'no'?

Yes, you can write commercial apps. It's multi-licensed (commercial,
GPL, etc.): you get to pick the license(s) you want to use. Read the
licenses.

PyQt's licensing follows Qt's very closely, so no real complications
there. Note PyQt (including a Qt license for use only with PyQt) is
actually far cheaper than Qt alone (if you buy Blackadder).


ok, thanks. I've just had a quick browse of the licence notes at the
PyQt website.

I guess I meant: "can I write commercial closed-source software *without
paying anything for Qt" - to which I sounds like the answer is
definitely "No" :)

Andrew
Jul 18 '05 #17
since I'm developing in Tkinter, I'm intrigued by your comment that:
"It allowed me to do things in hours,
which literally took weeks with tkinter, "

please elaborate!

Cheers
S

Jul 18 '05 #18

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

2
by: Dennis Sylvester | last post by:
Interested in any opinions, studies, etc., concerning the GUI tool(s) to use for Python. Specifically, which would you recommend (and why) for building GUI apps in Python: TKinter BOA PyQT ...
5
by: carljohan.rehn | last post by:
I would like like to start doing some GUI-programming in Python, but don't know which library to choose. Tkinter seems a bit old. Correct me if I am wrong! The layout doesn't look as nice as for...
4
by: ulysses | last post by:
hi, I'm working in python 5 months. I think it's very cool language. I do a p2p python program GUI. First I make a software by wxpython. But I find wxpython use many many memory. Second I use...
25
by: James Goldwater | last post by:
I'm starting a new hopfully-commercial project soon, and I face a dilemma about whether Python with wxPython would be appropriate. The project has 3 main areas: a) manipulation of lists and...
5
by: JamesW | last post by:
Dear All, I need to install wxPython to run some programs that interest me. I have had numerous problems, probably due to knowing little about the packages and python, and taking the computer...
25
by: BJörn Lindqvist | last post by:
See: http://www.wxpython.org/quotes.php. especially: "wxPython is the best and most mature cross-platform GUI toolkit, given a number of constraints. The only reason wxPython isn't the standard...
8
by: Erik Johnson | last post by:
I am looking for some input on GUI libraries. I want to build a Python-driven GUI, but don't really understand the playing field very well. I have generally heard good things about wxPython. I...
5
by: cravephi | last post by:
I would like to make a software like simulink: http://www.mathworks.com/cmsimages/sl_mainpage_wl_7488.gif using python. In order of bulding the interface (drag&drop block, link system between...
2
by: Janto Dreijer | last post by:
I'm writing a Linux filemanager using wxPython. I'd like to embed a bash console inside it. I have found the Logilab pyqonsole (http://www.logilab.org/projects/pyqonsole), but it uses PyQT. Does...
1
by: CloudSolutions | last post by:
Introduction: For many beginners and individual users, requiring a credit card and email registration may pose a barrier when starting to use cloud servers. However, some cloud server providers now...
0
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 3 Apr 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome former...
0
by: ryjfgjl | last post by:
In our work, we often need to import Excel data into databases (such as MySQL, SQL Server, Oracle) for data analysis and processing. Usually, we use database tools like Navicat or the Excel import...
0
by: taylorcarr | last post by:
A Canon printer is a smart device known for being advanced, efficient, and reliable. It is designed for home, office, and hybrid workspace use and can also be used for a variety of purposes. However,...
0
by: Charles Arthur | last post by:
How do i turn on java script on a villaon, callus and itel keypad mobile phone
0
by: aa123db | last post by:
Variable and constants Use var or let for variables and const fror constants. Var foo ='bar'; Let foo ='bar';const baz ='bar'; Functions function $name$ ($parameters$) { } ...
0
by: ryjfgjl | last post by:
If we have dozens or hundreds of excel to import into the database, if we use the excel import function provided by database editors such as navicat, it will be extremely tedious and time-consuming...
0
by: ryjfgjl | last post by:
In our work, we often receive Excel tables with data in the same format. If we want to analyze these data, it can be difficult to analyze them because the data is spread across multiple Excel files...
0
by: emmanuelkatto | last post by:
Hi All, I am Emmanuel katto from Uganda. I want to ask what challenges you've faced while migrating a website to cloud. Please let me know. Thanks! Emmanuel

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.