473,799 Members | 3,212 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

GUI Frameworks in Python?

I've recently been trying out various different GUI frameworks in Python and
was wondering if I could get your input on the pros and cons of the
different ones...

wxPython: I love the programming side of wxPython, but I find it's just so
slow to initialise in the first place.

Tkinter: While it's fast to load up, the syntax has never really appealed to
me

GTK: Unknown - I'm looking into it today

Qt: I have yet to manage to install it on my system

Anything else?
Hugh Macdonald
Jul 18 '05
59 4318
On Tue, 30 Mar 2004 20:21:58 +0200
Riccardo Attilio Galli <ri************ *@cut.me.sidera lis.net> wrote:

> GTK: Unknown - I'm looking into it today
>

Is this Linux only ?
(pardon my terrible ignorance...)


Yeah - it is... I'n only developing for Linux here...


It's false.
I'm developping a gtk program which run in both linux and windows.


Sorry - when I answered the original question I thought he was asking if I was developing for Linux only... looking back, I have no idea why I got that idea....

--
Hugh Macdonald
The Moving Picture Company

Jul 18 '05 #21
On Tue, 30 Mar 2004 10:58:58 -0500
Peter Hansen <pe***@engcorp. com> wrote:
Rebooted. No wxPython apps run first. Clicked on Demo icon and said
"one thousand and wuh--" and the splash banner appeared. Run it again
and I get as far as "one thou--", so clearly there is some difference
between the two and it's not pilot error.


I just wrote the following simple script:

-------------------------------------------------
#!/software/python/python2.2.2/linux/bin/python
import time
startTime = time.time()
from wxPython.wx import *
print "Time:",time.ti me()-startTime
-------------------------------------------------

On running multiple times, I get the following outputs:

Time: 4.60863804817
Time: 3.26165890694
Time: 3.24744296074
Time: 3.26767706871
Time: 3.25304102898

Definately something going on here..... going to try a reboot....

--
Hugh Macdonald
The Moving Picture Company

Jul 18 '05 #22
Hugh Macdonald wrote:
I just wrote the following simple script:

-------------------------------------------------
#!/software/python/python2.2.2/linux/bin/python
import time
startTime = time.time()
from wxPython.wx import *
print "Time:",time.ti me()-startTime
-------------------------------------------------

On running multiple times, I get the following outputs:

Time: 4.60863804817
Time: 3.26165890694
Time: 3.24744296074
Time: 3.26767706871
Time: 3.25304102898


Running that repeatedly (sorry, can't reboot conveniently
right now, so can't get the first time) it takes 0.125 s
on my machine.

-Peter
Jul 18 '05 #23
> I was watching system performance simultaneously and noticed a
decrease of free RAM memory by ~ 10 MB on starting and the same
increase on stopping. But the dlls - once loaded - apparently
are kept in RAM.


That is what Windows does. Using an oft used cliche in a different
realm that always made me laugh, "Don't hate the player, hate the game".
In this case, the player is wxPython, the game is 'running on Windows'.

There may be some method to tell windows to evict currently unused dlls,
but I wouldn't hold my breath.

- Josiah
Jul 18 '05 #24
On Tuesday 30 March 2004 05:35 am, Hugh Macdonald wrote:
GTK: Unknown - I'm looking into it today


Is this Linux only ?
(pardon my terrible ignorance...)


Yeah - it is... I'n only developing for Linux here...


No! GTK is most definitely cross platform. I use it on both Windows
and Linux with great success. And it's very consistent in the sense
that my GUI looks identical on both platforms. I have almost no need
for any platform dependent code in my GUI layout. (Unlike Tkinter and
wxPython where I remember having to tweek fonts and other things on a
platform by platform basis.)

Here's several pointers:
http://www.async.com.br/faq/pygtk/in...=faq21.012.htp
http://www.pcpm.ucl.ac.be/~gustin/win32_ports/

Gary Herron

Jul 18 '05 #25
At some point, Gary Herron <gh*****@island training.com> wrote:
On Tuesday 30 March 2004 05:35 am, Hugh Macdonald wrote:
> > GTK: Unknown - I'm looking into it today
>
> Is this Linux only ?
> (pardon my terrible ignorance...)


Yeah - it is... I'n only developing for Linux here...


No! GTK is most definitely cross platform. I use it on both Windows
and Linux with great success. And it's very consistent in the sense


There's no (working) native port for Mac OS X [1], so I'd call it only mostly
cross-platform. You could use the X version, and run an X server, but
I could argue you could do the same under Windows...

[1] there are some partly-complete ports of GTK 1.2, but nothing for
GTK 2.x

--
|>|\/|<
/--------------------------------------------------------------------------\
|David M. Cooke
|cookedm(at)phy sics(dot)mcmast er(dot)ca
Jul 18 '05 #26
Peter Hansen wrote:

The first time I launched IDLE, it took almost three seconds. (I don't
have the Python installer compile .py files ahead of time.) After that
it takes about one second as well.

I'm curious about the differences with wxPython. Three seconds seems
unusually long when on a slightly slower machine I can do it in well
under a second. Was that the first time you ran it? Many other apps
open? I have over 256MB RAM free when I try this...

-Peter


Running Hugh's timing script from the command prompt, right after a
reboot, I get 1.1 seconds. Then on successive runs I get between 0.1 and
0.2 seconds. Then I ran the wx demo (without rebooting) and it was just
under 1.5 seconds for the splash. On successive runs it was well under 1
second.

So, maybe wxPython's not as bad as I thought. It's like my car in the
winter: I need to run out and start it up every few hours to make sure I
can make it home. ;)

greg
Jul 18 '05 #27
I'm really sorry for my ignorance of pyGTK in Windows. I've installed pyGTK
in my desktop by following Jon's reply message.

I feel it's really so cool, after run a helloworld application.

Phipps
"Phipps Xue" <ph********@sap .com> wrote in message
news:c4******** **@news1.wdf.sa p-ag.de...
pyGTK is also a good GUI frameworks but it's not available now for windows
platform. I suppose it's its most important shortage.

Phipps
"Hugh Macdonald" <Hu***********@ brokenpipefilms .com> wrote in message
news:ma******** *************** *************** @python.org...
I've recently been trying out various different GUI frameworks in Python and
was wondering if I could get your input on the pros and cons of the
different ones...

wxPython: I love the programming side of wxPython, but I find it's just so slow to initialise in the first place.

Tkinter: While it's fast to load up, the syntax has never really

appealed to
me

GTK: Unknown - I'm looking into it today

Qt: I have yet to manage to install it on my system

Anything else?
Hugh Macdonald


Jul 18 '05 #28
Hugh Macdonald <Hu***********@ brokenpipefilms .com> wrote in message news:<ma******* *************** *************** *@python.org>.. .
On 30 Mar 2004 05:18:58 -0800
mi*****@foord.n et (Fuzzyman) wrote:
'Programming Python' has an excellent introduction.. so I started with
Tkinter thinking that when I hit restrictions I could move onto wx. I
haven't yet reached the point where Tkinter restricts me. Whereas
there are a couple of widgets missing from the standard distribution,
Tkinter *can* be used to make clean and modern looking interfaces.....
And the syntax isn't too gawky once you've climbed the initial
learning curve.
For me, the issue with TK is less the restrictions it imposes and more the way of writing it in the first place.


I guess there are two 'warts' :

callback functions are usually called without parameters.

Wrapping the GUI framework in a class gets round this nicely - the
callback function has full access to the class instance attributes.

The second is the way that events are triggered with an event object :
self.searchbox. bind('<Return>' , (lambda event: self.search()))

Using a lambda function to trigger a callback function gets round
that.

Once you get used to the pack order with Tk it's remarkably easy to
build GUIs quickly....

I guess for *big* applications some of the 'power' widgets might be
missing from the standard distribution. In that sense wx is
undoubtably more polished and fully featured.... But so far for me -
Tk has more than covered my needs without even exploring extension
widget sets. Apparently one of the more high powered IDEs (I forget
which one) is seamlessly built from Tk widgets.... but you'd never
realise it to look at it - so I guess the potential is there.

Regards,
Fuzzy

http://www.voidspace.org.uk/atlantib...thonutils.html

GTK: Unknown - I'm looking into it today


Is this Linux only ?
(pardon my terrible ignorance...)


Yeah - it is... I'n only developing for Linux here...
Qt: I have yet to manage to install it on my system

Although *technically* cross platform, windoze users can't get a free
version... so I'm never going to bother looking at it...


That doesn't bother me - everything I'm writing is for in-house use only, and would only ever be run on Linux...

Thanks for everyones thoughts... I'm actually planning on sticking with wxPython for the moment. I've decided that I can live with the extra few seconds to load up, although I don't like it...

Jul 18 '05 #29
Josiah Carlson wrote:
I was watching system performance simultaneously and noticed a
decrease of free RAM memory by ~ 10 MB on starting and the same
increase on stopping. But the dlls - once loaded - apparently
are kept in RAM.


That is what Windows does. Using an oft used cliche in a different
realm that always made me laugh, "Don't hate the player, hate the game".
In this case, the player is wxPython, the game is 'running on Windows'.


After stopping the wxpython app Windows reports its memory share as
free, i.e. usable for other applications. If the same application
is reloaded and its binary stuff is not yet overwritten it is reused.
That's a good thing IMO, not a flaw. It would be nice though to
configure this behaviour, e.g. for testing. Perhaps there's a
registry spell in one of the numerous guru books for Win* but my
interest doesn't go this far.

Mit freundlichen Gruessen,

Peter Maas

--
-------------------------------------------------------------------
Peter Maas, M+R Infosysteme, D-52070 Aachen, Hubert-Wienen-Str. 24
Tel +49-241-93878-0 Fax +49-241-93878-20 eMail pe********@mplu sr.de
-------------------------------------------------------------------
Jul 18 '05 #30

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

Similar topics

14
2712
by: mirnazim | last post by:
Hi, There are great Python Web Application Framework. But most of them are meant for content oriented web apps. Is there something that can ease the development of application that are not content oriented(I call them "NON CONTENT-ORIENTED WEB APPLICATIONS" because I don't know what else to call them). I mean the applications like, accounting, high volume data entry apps, where normally GUI clients have ruled. I know very high...
0
1267
by: Ravi Teja | last post by:
Why is no one talking about ActiveGrid, which at least on the surface seems to be the most polished way to build web applications in Python so far. They have a sound financial backing, $10 million when I last heard, made news on non-Python circles, have a relatively friendly authoring environment and are probably addressing the enterprise more specifically than any other web framework. It somehow did not grow on me but I would love to...
2
1315
by: Ed Leafe | last post by:
I may have an opportunity to develop an online ordering system for a client, and will have the ability to develop using any tool I choose. Given the fact that there are more web frameworks in Python than keywords ;-) , what I need to know is any experience anyone out there has had integrating credit card processing with the various Python web frameworks. Until now, my only practical experience is with Zope 2.x, but I'm open to any and all...
1
1382
by: GinTon | last post by:
I have created several tables in CSV format with globalization data (G11n). There are tables for countries, areas, languages, countries & languages, time zones, phones. And they are licensed under a Creative Commons license. http://svn.webda.python-hosting.com/trunk/G11n_data/ I created a new discussion group in order to facilitate the integration of G11n data in any framework. It's focused on integrate it on Django and TurboGears,...
4
1213
by: Shortash | last post by:
Hi Gurus, I want to build a Python web app but im not sure which one to go for. I prefer something like asp.Net , which would allow me to fully seperate the presentation layer from the logic. Please advise? thanks, "Shortash'
4
1945
by: Evan Klitzke | last post by:
Hi all, What frameworks are there available for doing pattern classification? I'm generally interested in the problem of mapping some sort of input to one or more categories. For example, I want to be able to solve problems like taking text and applying one or more tags to it like "romance", "horror", "poetry", etc. This isn't really my research specialty, but my understanding is that Bayesian classifiers are generally used for problems...
37
2584
by: Michele Simionato | last post by:
At work we are shopping for a Web framework, so I have been looking at the available options on the current market. In particular I have looked at Paste and Pylons and I have written my impressions here: http://www.phyast.pitt.edu/~micheles/python/yet-another-comparison-of-web-frameworks.html I do not speak too well of Pylons, so if you thing I am wrong feel free to correct me here ;)
29
1585
by: joe jacob | last post by:
There are a lot of web frameworks for python like django, mod_python, spyce, turbo gears, Zope, Cherrypy etc. Which one is the best in terms of performance and ease of study.
7
1442
by: Phillip B Oldham | last post by:
Are there any python micro-frameworks (like ruby's Camping)?
0
9687
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However, people are often confused as to whether an ONU can Work As a Router. In this blog post, we’ll explore What is ONU, What Is Router, ONU & Router’s main usage, and What is the difference between ONU and Router. Let’s take a closer look ! Part I. Meaning of...
0
10252
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven tapestry of website design and digital marketing. It's not merely about having a website; it's about crafting an immersive digital experience that captivates audiences and drives business growth. The Art of Business Website Design Your website is...
1
10231
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows Update option using the Control Panel or Settings app; it automatically checks for updates and installs any it finds, whether you like it or not. For most users, this new feature is actually very convenient. If you want to control the update process,...
0
9073
agi2029
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing, and deployment—without human intervention. Imagine an AI that can take a project description, break it down, write the code, debug it, and then launch it, all on its own.... Now, this would greatly impact the work of software developers. The idea...
0
6805
by: conductexam | last post by:
I have .net C# application in which I am extracting data from word file and save it in database particularly. To store word all data as it is I am converting the whole word file firstly in HTML and then checking html paragraph one by one. At the time of converting from word file to html my equations which are in the word document file was convert into image. Globals.ThisAddIn.Application.ActiveDocument.Select();...
0
5463
by: TSSRALBI | last post by:
Hello I'm a network technician in training and I need your help. I am currently learning how to create and manage the different types of VPNs and I have a question about LAN-to-LAN VPNs. The last exercise I practiced was to create a LAN-to-LAN VPN between two Pfsense firewalls, by using IPSEC protocols. I succeeded, with both firewalls in the same network. But I'm wondering if it's possible to do the same thing, with 2 Pfsense firewalls...
0
5585
by: adsilva | last post by:
A Windows Forms form does not have the event Unload, like VB6. What one acts like?
1
4141
by: 6302768590 | last post by:
Hai team i want code for transfer the data from one system to another through IP address by using C# our system has to for every 5mins then we have to update the data what the data is updated we have to send another system
2
3759
muto222
by: muto222 | last post by:
How can i add a mobile payment intergratation into php mysql website.

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.