473,385 Members | 1,875 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,385 software developers and data experts.

Fast and easy GUI prototyping with Python

Which tools would you use? I want the interface design to be as easy
and fast as possible, all ideology aside. I'm considering either
IronPython+Visual Studio or Python+Qt -- but I'm open for other
suggestions.

Visual Studio seems to offer the easiest solution, but is IronPython
stable enough? How easy is the IronPython/Visual Studi integration?
What about IronPython Studio?
Jun 27 '08 #1
10 4163
er****@gmail.com <er****@gmail.com>:
Which tools would you use? I want the interface design to be as easy
and fast as possible, all ideology aside. I'm considering either
IronPython+Visual Studio or Python+Qt -- but I'm open for other
suggestions.
I'm using the latter, and am perfectly happy with a combination of Qt
Designer as GUI editor and emacs as code editor.

--
Freedom is always the freedom of dissenters.
(Rosa Luxemburg)
Jun 27 '08 #2
On Jun 21, 3:36 pm, ero...@gmail.com wrote:
Which tools would you use? I want the interface design to be as easy
and fast as possible, all ideology aside. I'm considering either
IronPython+Visual Studio or Python+Qt -- but I'm open for other
suggestions.

Visual Studio seems to offer the easiest solution, but is IronPython
stable enough? How easy is the IronPython/Visual Studi integration?
What about IronPython Studio?
I've had success using wxPython in conjunctin with wxGlade. wxGlade is
quite flexible, allows quick previews and generates code that's not
bad. The wxPython binding is very well supported and works nicely in
practice. And, best of all, this solution is both free and completely
cross-platform.

Eli
Jun 27 '08 #3
On 21 ÉÀÎ, 15:36, ero...@gmail.com wrote:
Which tools would you use? I want the interface design to be as easy
and fast as possible, all ideology aside. I'm considering either
IronPython+Visual Studio or Python+Qt -- but I'm open for other
suggestions.

Visual Studio seems to offer the easiest solution, but is IronPython
stable enough? How easy is the IronPython/Visual Studi integration?
What about IronPython Studio?
Use PyQt. You will gain great portability +all the functionality built
in qt.
You can try PyGTK also, though i wont recommend it.
Jun 27 '08 #4
On Jun 21, 1:36*pm, ero...@gmail.com wrote:
Which tools would you use? I want the interface design to be as easy
and fast as possible, all ideology aside. I'm considering eitherIronPython+Visual Studio or Python+Qt -- but I'm open for other
suggestions.

Visual Studio seems to offer the easiest solution, but isIronPython
stable enough? How easy is theIronPython/Visual Studi integration?
What aboutIronPythonStudio?
IronPython 1 is very stable. IronPython 2 is still in beta.

The IronPython 1 and Visual Studio 2005 integration (via the SDK) is
pretty good. Personally I think IronPython Studio is a bit immature -
and I don't like the way it generates Python code anyway.

The Windows Forms designer in Visual Studio is pretty good.
Unfortunately better than most GUI designers available for other
Python compatible toolkits. I still don't like the designer for
creating UIs with fluid layouts - I don't think it handles them very
well.

In my opinion, the best way to use the designer is to actually
generate C# rather than IronPython code. You can then subclass from
IronPython and implement the programmed behaviour - using the designer
only for the UI layout.

Windows Forms is very cross platform now with Mono. Mono now has full
coverage of the .NET 2.0 winforms APIs.

Michael Foord
http://www.ironpythoninaction.com/
Jun 27 '08 #5
Thanks for your input. The prototype will be running on Windows only.
Portability and being able to develop on other platforms would be a
bonus, but is not a requirement. I guess the choice is going to be
between Visual Studio and Qt. Of importance is:

1) Being able to develop and change (dummy) GUI prototypes very fast,
i.e. drag and drop. I've tried Visual Studio's form designer -- it
seems quite capable. Don't know about Qt's designer -- is it as easy
and fast to use?

2) The Qt vs. .NET API. I have no experience with Qt's API and a
rudimentary experience with the .NET API (seems powerfull but also big
and complex).

Michael: Interesting suggestion to just subclass C#, maybe that's the
way to go.
Jun 27 '08 #6
On Jun 21, 6:15*pm, ero...@gmail.com wrote:
Thanks for your input. The prototype will be running on Windows only.
Portability *and being able to develop on other platforms would be a
bonus, but is not a requirement. I guess the choice is going to be
between Visual Studio and Qt. Of importance is:

1) Being able to develop and change (dummy) GUI prototypes very fast,
i.e. drag and drop. I've tried Visual Studio's form designer -- it
seems quite capable. Don't know about Qt's designer -- is it as easy
and fast to use?

2) The Qt vs. .NET API. I have no experience with Qt's API and a
rudimentary experience with the .NET API (seems powerfull but also big
and complex).

Michael: Interesting suggestion to just subclass C#, maybe that's the
way to go.
I found the Windows Forms APIs pretty straightforward. You can get a
good introduction to the .NET APIs from "IronPython in Action". ;-)

Michael Foord
http://www.ironpythoninaction.com/
Jun 27 '08 #7
er****@gmail.com wrote:
2) The Qt vs. .NET API. I have no experience with Qt's API and a
rudimentary experience with the .NET API (seems powerfull but also big
and complex).
Qt's API is very very good. Easy to use and extremely powerful. Note
that in Python a number of Qt's APIs are not used in favor of Python
native apis for things like file and socket I/O, IPC, Threads, and so
forth. Additionally, PyQT does allow you the flexibility to move to
other platforms. That need may not exist for you now, but it never
makes sense to me to needlessly lock yourself down. As far as GUI
design goes, Qt and SWF would be on par, likely. It's a bit of a
misnomer to be comparing Qt to the .NET API. In IronPython you can of
course leverage all the class libraries in the CLR, but most python
programmers prefer to use python native libraries wherever possible. If
you follow that, then it's SWF that compares to Qt. I've not used VS
2008's SWF gui designer, but of all the designers I've seen so far, Qt's
Designer is the best I've ever used. I don't ever use code generation
(GUIs should be created from the XML definitions), so integration with
an IDE is not a concern for me.

One issue about Qt is licensing, which could completely kill it for you.
Although technically PyQt would insulate you from this issue to a
point, TrollTech will not license Qt for your use in a non-GPL project
if you began developing the project using the GPL version of Qt.
Jun 27 '08 #8
Michael Torrie <to*****@gmail.com>:
er****@gmail.com wrote:
>2) The Qt vs. .NET API. I have no experience with Qt's API and a
rudimentary experience with the .NET API (seems powerfull but also big
and complex).

Qt's API is very very good. Easy to use and extremely powerful. Note
that in Python a number of Qt's APIs are not used in favor of Python
native apis for things like file and socket I/O, IPC, Threads, and so
forth.
The support for signals and slots is imho a strong reason to prefer Qt apis
over standard python apis, especially when it comes down to asynchronous
programming (for instance, large network transfers like file downloads).
I've not used VS 2008's SWF gui designer, but of all the designers I've
seen so far, Qt's Designer is the best I've ever used.
full ack.

--
Freedom is always the freedom of dissenters.
(Rosa Luxemburg)
Jun 27 '08 #9
Pete Kirkham wrote:
2008/6/21 Val-Amart <e.*****@gmail.com>:
>Use PyQt. You will gain great portability +all the functionality built
in qt.
You can try PyGTK also, though i wont recommend it.
Why would you not recommend it? I've been using it for a mall project, and
would like to know if there's some pit waiting for me to fall into.
The only pitfall is Mac compatibility. OS X support in GTK is still
under development, and much harder to get running than Qt. I guess one
other minor thing is that on win32 it's not quite native-looking, but
pretty darn close.

If Gtk provides everything you need, then there's no reason not to use
it. I personally prefer it to Qt, although Qt is quite far ahead of Gtk
in many ways (including CSS to style widgets). GTK's licensing is more
appropriate for closed-source projects than Qt under the GPL (and
cheaper too).
Jun 27 '08 #10
Michael Torrie <to*****@gmail.com>:
Pete Kirkham wrote:
>2008/6/21 Val-Amart <e.*****@gmail.com>:
>>Use PyQt. You will gain great portability +all the functionality built
in qt.
You can try PyGTK also, though i wont recommend it.
Why would you not recommend it? I've been using it for a mall project,
and would like to know if there's some pit waiting for me to fall into.

The only pitfall is Mac compatibility. OS X support in GTK is still
under development, and much harder to get running than Qt. I guess one
other minor thing is that on win32 it's not quite native-looking, but
pretty darn close.
Just out of curiosity: Does gtk's look also match Vista's look?

--
Freedom is always the freedom of dissenters.
(Rosa Luxemburg)
Jun 27 '08 #11

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

Similar topics

30
by: Dave Allison | last post by:
Oh no, not another "check out my cool new language" posting :-) For about 5 years now, I have been developing a scripting/prototyping language that is now available on the net. It's called...
32
by: dan | last post by:
It would be an understatement to say I love this language. What used to take me all day now takes 3 hours, and I can spend the rest of the time on my bike thinking about the problems from a high...
9
by: Carl | last post by:
I have been using Python for quite some time now and I love it. I use it mainly for explorative computing and numerical prototyping, ie testing and trying out different kinds of algorithms and...
1
by: cainlevy | last post by:
Hey all, What are the pros and cons of defining methods in the constructor vs through the prototype? For example: Constructing: ------------- function MyObj() { this.MyMethod = function()...
10
by: Burton Samograd | last post by:
Hi, Is there any way to 'prototype' functions in python, as you would in C? Would that be what the 'global' keyword is for, or is there a more elegant or 'pythonic' way of doing forward...
8
by: . | last post by:
What is the fast way for a fast implementation of Python? -- JavaScript implementation of Python http://groups.google.it/group/JSython/
10
by: javuchi | last post by:
I just want to share some code with you, and have some comments and improvements if you want. This header file allocates and add and delete items of any kind of data from a very fast array: ...
2
by: Ben | last post by:
I'm looking for a web application framework with a good interface to PostgreSQL. The app I'm developing is relatively simple, but I'm new to coding, so it needs to be easy. What I'm making is...
7
by: dave | last post by:
Hi All. I've been formulating in my head a simple image editor. I actually started prototyping is some time ago in Java, but am liking Python more and more. My editor will be nowhere near the level...
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:
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
0
BarryA
by: BarryA | last post by:
What are the essential steps and strategies outlined in the Data Structures and Algorithms (DSA) roadmap for aspiring data scientists? How can individuals effectively utilize this roadmap to progress...
1
by: nemocccc | last post by:
hello, everyone, I want to develop a software for my android phone for daily needs, any suggestions?

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.