Perl/Tk is a thoroughly underrated GUI toolkit.
I have used Perl/Tk, Java AWT, Java Swing, Gtk+, and VB. I can say that Perl/Tk is by far my favorite.
Preferences aside, there are advantages and disadvantages to each and each may be used for different reasons.
These are the advantages of Perl/Tk as I see it:
1) Platform independence. I have written rather complicated applications (e.g., about 20 different kinds of toplevel windows in the application) in Perl/Tk, and they worked identically for both my Linux and Windows users. I even used ActiveState's perlapp without a hitch to create executables, which enabled me to distribute the application to Windows users who didn't have Perl installed or didn't know how to type "ppm install Tk" at a DOS prompt.
2) Robustness. I was quite pleased with the widget set Perl/Tk had to offer. I found making compound (i.e., complex customized) widgets easy once I got the hang of it and never felt like there was any crucial element that I was missing, as I felt when I was working with AWT.
3) Simplicity. The GUI code of Perl/Tk is as easy as VB, and because it's in Perl, the non-GUI parts of the code are alot easier and more intuitive to me. (I've heard others say they don't find Perl/Tk syntax intuitive, but I've always found it easy to understand. Maybe that's just me.) Plus you have the whole of the CPAN to work with :-)
4) Reliability. The base widget set is fairly mature, and it shows.
5) Perl. You can code in Perl, which, of Perl, Java, C, and C++ (the other languages I've coded in) is by far my favorite language for reasons that would fill several volumes.
Here are some of the disadvantages:
1) Documentation. Back when I started, there were a couple of web sites with documentation (O'Reilly books were years in the coming) and comp.lang.perl.tk. To this day, widespread and easily digested documentation (with the possible exception of the Learning Perl/Tk book by O'Reilly) is sorely lacking. In documentation, Java and VB easily have the edge.
I must say, though, I enjoy coding in Perl so much that the lack of documentation did not deter me, and I'm happy that it didn't.
2) Compiling on Unix. There is no easy, commonly accepted means to compile Perl scripts for Unix. Over time, the widget toolkit can change, which rarely changes the functionality of the widgets, but can sometimes impact the appearance of your widgets. (The most annoying thing I've found is changes in font support). On Windows, I've never seen perlapp unable to compile even the most complex Perl/Tk application.
3) GUI builders. I've always been one to learn something with a basic text editor at my fingers, then move on to IDEs and GUI builders once I'm confident with the foundations. So this was not an issue for me, and in fact now that I know the syntax so well, I can code the text much faster and cleaner in Perl/Tk that I've seen VB coders build similar things with a GUI builder. (I even had a race once with a VB coder who was using a GUI builder. I won 2 of 3 contests.) However, GUI builders for the other languages are clearly superior.
4) Community. Less people code in Perl/Tk than Java/Swing or VB. I see this as an advantage and disadvantage. I get consistently good advice when I post a question to comp.lang.perl.tk and the community is very friendly and helpful. However, there are not as many resources available.
Finally, I should point out that Perl/Tk is good for small to medium applications, and for a word processor or some other extremely complex application, you will want to go with something else. (For example, when you build an application that has a huge scroll area, such as a spreadsheet with 65536 rows and 1024 columns, you will run into significant problems as Perl/Tk doesn't have the kind of widgets that support such mongo, if I may say mongo, needs.) But for applications that you need to make with a minimum of fuss, particularly for applications that should be cross-platform, Perl/Tk won't steer you wrong.
As an aside, I think Perl/Tk should be included with the standard Perl bundle. It would make such a great environment for making GUI-based utilities (such as sysadmin utilities) and other applications that would make Unix more friendly to less knowledgable users if Perl coders could simply assume that Perl/Tk came installed on the platform they were writing for.
When I've been asked by customers for GUI applications and the choice of language has not been specified, I usually reach for Perl/Tk first. They have even been unaware after receiving the product that it was written in Perl, but they are pleased with the turnaround time.
Hope this helps!