By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
445,909 Members | 2,016 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 445,909 IT Pros & Developers. It's quick & easy.

Fast and easy GUI prototyping with Python

P: n/a
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
Share this Question
Share on Google+
10 Replies


P: n/a
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

P: n/a
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

P: n/a
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

P: n/a
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

P: n/a
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

P: n/a
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

P: n/a
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

P: n/a
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

P: n/a
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

P: n/a
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 discussion thread is closed

Replies have been disabled for this discussion.