Beefy Boxes and Bandwidth Generously Provided by pair Networks
Think about Loose Coupling

GUI Opinion

by RollyGuy (Chaplain)
on Jul 24, 2002 at 12:57 UTC ( #184799=perlquestion: print w/replies, xml ) Need Help??

RollyGuy has asked for the wisdom of the Perl Monks concerning the following question:

At work I need to deveop a GUI for some perl code. Speed is not important as the GUI will just be used to set many (~3000) settings.

So my question is: Is there a preferred module that I should be using?

Replies are listed 'Best First'.
Re: GUI Opinion
by erasei (Pilgrim) on Jul 24, 2002 at 13:26 UTC
    Just to expand on what derby said, It is going to depend on the platform you need to support.

    Is this going to be a client program that is copied around to users machines?
    Will it be for Windows, Xwindows, command line, Web?

    Each of these will make a huge difference in the style of program you will be writing. Personally, if more than one platform is involved, go web based. Even if there isn't more than one platform now, there might be later. Password protect the site, and then it can be accessed from anywhere that has a net connection and a browser.

    If it will be installed on each users machine, then it will most likely require some sort of network support in order to perform it's action on a remote machine. In a web based GUI, you don't have all of the control of a local program. It's hard to do things like populating menus based on actions, and changing other elements of the GUI on the fly. It can be done, but requires page reloads to change the content. These may, or may not play a roll in your particular case. Just something to keep in mind.

      I see that I didn't include enough information in my question -- sorry (I'm a bit new). We are using a networked Linux envrionment so I won't have to worry about different platforms or machines. The program is not a client, just a standalone that currently accepts file input. I wanted to try to go the extra mile and add a GUI.

      A web-based (unfortunately) will not be the best solution here. I know that I need a graphics package and really just wanted to know if the Monks had a favorite package. I don't know the advantages/disadvantages of any, so I was trying to save myself some time in investigating that.

        Personally, I like Perl/Tk. I have yet to use it in a production piece, but have done a few scripts just to learn how. It's easy to use and the docs are plenty. You have find out all about it at There is a good tutorial on about GUI programming with Tk as well. The screenshots are from a ActiveState (Windows) installation, but the code should work regardless.
Re: GUI Opinion
by derby (Abbot) on Jul 24, 2002 at 13:11 UTC
    Well you could use on of the several cpan graphic toolkits (Tk, Gtk, etc) or bypass all that and make it web based.


Re: GUI Opinion
by dreadpiratepeter (Priest) on Jul 24, 2002 at 13:47 UTC
    If erasei's comments above haven't made you go with the web (and his points are excellent), then I would highly recommend Tk.
    I've been doing gui programming since the early days of X (and actually before that in curses). Tk is my favorite gui toolkit by far.
    I started using Tk when it was part of Tcl. But, the toolkit really shines in Perl. It is very flexible, powerful and expressive. And if it doesn't do what you want, it is easy to extend. Like Perl it makes simple things easy, and hard things possible.
    It would recommend the 2 O'Reilly books on Tk to start with. And if you get stuck, there are a lot of people here to answer questions.

    BTW, with a few minor hiccups, I've found that Tk works well on Windows platforms, not just on unix.

    "Pain heals. Chicks dig scars. Glory lasts forever."

Log In?

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: perlquestion [id://184799]
Approved by IlyaM
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others making s'mores by the fire in the courtyard of the Monastery: (4)
As of 2022-08-15 14:00 GMT
Find Nodes?
    Voting Booth?

    No recent polls found