http://qs321.pair.com?node_id=302141


in reply to Advice on writing GUI's in Perl

I don't know of any IDE's for Perl, and I'm not really sure you need one. If you opt to go with Perl/Tk instead of the Gtk+ Perl bindings, you design your interface programmatically. IMHO, this is a better approach. After a bit of practice, you can often code a serious interface faster than you could drag-and-drop it into existence - and more often than not, that interface would be a lot cleaner aesthetically.

So I'd suggest looking into Perl/Tk and avoiding IDE's. Of course, that's just my own opinion, but if you decide to take my advice, then get Tk off CPAN, read its documentation, and get familiar with it. I highly recommend O'Reilly's Mastering Perl/Tk, butthere's at least one tutorial right here in the Monastery.

Also, the first time you use Tk, you might be a bit disheartened by its appearance - I was. Look at this node for a quick but extremely effective way of cleaning up Tk's appearance.

And if you don't belive me that Tk lets you make working UI's quickly, take a look at this sample:

use Tk; $mw = MainWindow->new; # the next two lines fix the default Tk aesthetics $mw->optionAdd("*font", "-*-arial-normal-r-*-*-*-120-*-*-*-*-*-*"); $mw->optionAdd("*borderWidth", 1)_; $e1 = $mw->Entry->pack; $e2 = $mw->Entry->pack; $sum = $mw->Label->pack; $mw->Button(-text => 'Compute', -command => sub { $sum->configure(-text => ($e1->get() + $e2->get())); })->pack; MainLoop;
That code creates a simple form with two entry boxes, an area for results, and a button to add the two entered values together and put the result into the result area. You'd be hard-pressed to write that kind of thing with a click-and-drool IDE and get it working as quickly as you could write a script like the above. But, hey, TMTOWDI. :-)

The computer can't tell you the emotional story. It can give you the exact mathematical design, but what's missing is the eyebrows. - Frank Zappa