Best Cross Platform GUI Development Tool?

James McDonald james
Thu May 17 17:32:30 PDT 2007


Alma J Wetzker wrote:
> Looking for opinions here.
>
> What is the best tool set for creating cross platform GUIs?  I need
> something that that comes together fairly quickly and can access a
> database backend.  Must run on Windoze (I will develop on linux.)  It
> may be a web based application.  What should I use?  Why?
>
> There are no right or wrong answers here, I just need to find something
> vaguely familiar that I can throw an application together in a month or
> so.  'C' is my favorite programming language.
>
> TIA
>   
I recently looked at Win32::GUI (wasn't really cross platform), bypassed 
perltk (too old style AFAIK) and settled on wxPerl because the wxGlade 
RAD tool worked well and it gave GTK2 alike on Linux and Windows XP 
alike on windows.

I am writing a simple gui interface to submit a batch job to MFG/Pro to 
stop the profound number of errors created by typos.

Here is a screenshot of the GUI on Windows XP 
http://www.jamesmcdonald.id.au/gallery/v/public/Tech-Stuff/wxPerl/windows_wxperl.png.html

Here is a screenshot showing the development being done under Linux at 
Home, at night (what's wrong with me).
http://www.jamesmcdonald.id.au/gallery/v/public/Tech-Stuff/wxPerl/linux_wxperl.png.html

I am not a programmer but the code generated by wxGlade (which can 
output wxPython, C++, lisp, Perl, XRC) was very useable after I 
downloaded the wxPerl samples from wxPerl.sourceforge.net particularly 
the controls.pl demo. Because the wxGlade designer allows you to define 
names for each control event and then generate the code you can find the 
sub bearing the name you gave the event and plonk your code in it and 
you're done.

Documentation is still fairly light on.

The problems as I see them with this is as follows.

Code obsfucation & packaging. The file generated by wxGlade is a perl 
script. I have tried pp -o myexe.exe input.pl but this creates something 
like a self extracting archive that unpacks to and executes to a random 
tmp directory everytime it's run so you can't bundle a text file full of 
settings with it very easily (with out hard coding the path and, damn 
it, I want it to run anywhere)

You may have to look at a professional perl2exe style packager because 
to distribute the application you would have to install ActiveState Perl 
& Wx & yourscript.pl (<= That is naff)

On Windows. If you run the control with perl.exe you get an ugly console 
window. Use wperl.exe but beware that you need to specify gui based 
warnings and exceptions in the code so the gui doesn't just exit because 
there is no console to display the warnings. e.g. die kills the gui and 
the script without a graphical error popping up.

The example screen shots above were created by me with about 2 days of 
experience. I am not familiar with glade so it's been a bit of a 
struggle to get things laid out properly but hey you are much more 
experienced at programming so it should be a breeze.



More information about the Linux-users mailing list