Hi,
I am collecting some info on building GUI for our new project. We need
to perform validations on some of the fields in the GUI screens(around
20 - 30 fields in each screen. After all the fields are validated they
need to be commited to the Oracle database.
We are currently evaluating various GUI class libraries(like Jclass,
Swing, SWT) along with the existing GUI builders.
Can you please suggest a few GUI class libraries(open source or
commercial) which are worth trying out with their pros and cons?
Your help is highly appreciated.
Thanks,
krc.
Karsten Lentzsch - 12 Jan 2004 09:16 GMT
> Can you please suggest a few GUI class libraries(open source or
> commercial) which are worth trying out with their pros and cons?
I provide free libraries, articles, presentations and
binary demos that can help you get started with Swing
and that may help you decide which way to go.
Recently I've started a validation framework and
now offer a Validation Demo that combines my Looks,
Forms, Data Binding and Validation framework.
The Demo primarily demonstrates different tasks,
but the sample solutions are worth a look.
The validation framework lets you validate on
the server side, in a client domain layer, client
control layer, or in the client view layer. See
http://www.jgoodies.com/freeware/validationdemo/
The free JGoodies Looks library ships with a good
Windows emulation and the Plastic look&feel family.
These have been optimized for readability, legibility,
and precise layout - but many people say they are elegant.
The JGoodies Looks Demo compares the Looks with others.
http://www.jgoodies.com/freeware/looks/
http://www.jgoodies.com/freeware/looksdemo/
The JGoodies Forms layout framework ships with an
advanced layout manager and two layers of helper
classes on top of it: builders and factories.
Forms makes simple things easy and the hard stuff
possible. Forms ships with a set of tutorial sources
that demonstrate well designed form examples.
The JGoodies Forms Demo utilizes and demo the Forms.
http://www.jgoodies.com/freeware/forms/
http://www.jgoodies.com/freeware/formsdemo/
The Metamorphosis demo is a short course in Swing
design and shows some don'ts and do's for Swing.
It also may help you learn about how to let Swing
catch up with the SWT appearance on Windows.
http://www.jgoodies.com/freeware/metamorphosis/
Next you may check out the "First Aid" presentation
and other presentations and whitepapers at
http://www.jgoodies.com/articles/
The free open source libraries mentioned above
have been financed by sponsors and customers
of my products. If the libraries help you save
time and money and improve your software,
I'd appreciate if you license the Swing Suite.
This way you help me build new Java desktop
solutions and write about it.
Hope this helps. Best regards,
Karsten Lentzsch
JGoodies :: Java User Interface Design
Herman Timmermans - 12 Jan 2004 13:53 GMT
> Hi,
>
[quoted text clipped - 13 lines]
> Thanks,
> krc.
You can also check out : http://www.wx4j.org/
wx4j is a Java binding for wxWindows providing a Java GUI toolkit using
native widgets. Since wx4j uses native widgets, it utilizes the native look
and feel. This is in contrast to Swing/JFC which tries to mimic the native
look and feel, but usually doesn't quite feel right. In this respect, it is
very similar to the SWT toolkit used in IBM's Eclipse IDE. But rather than
inventing yet another toolkit, wx4j utilizes the proven wxWindows C++
library and uses SWIG to expose the API in Java. This also means the event
loop executes in C++ and is very responsive.
Hope this is useful to you,
Brgds Herman

Signature
Suse Linux Professional 8.1 on Athlon 1.1 Ghz 512 Mb
Anti Spam = remove the "dot" and the "at"
Registered Linux User #264690
Visit us : http://users.skynet.be/herman.timmermans
Patrick B. Haggood - 14 Jan 2004 04:33 GMT
> Hi,
>
> I am collecting some info on building GUI for our new project. We need
> to perform validations on some of the fields in the GUI screens(around
> 20 - 30 fields in each screen. After all the fields are validated they
> need to be commited to the Oracle database.
You looking for fast implementation or most robust library? I'm using a
couple of simple classes from an IBM article that allows *extremely* quick
mockups of the GUI. If I need more control over layout later, I'll
probably look into one of the other frameworks mentioned here. Just be
careful and don't try to over-engineer a full app just to implement some
validations and some data entry.
http://www.javaworld.com/javaworld/jw-10-2002/jw-1004-dialog.html
Karsten Lentzsch - 14 Jan 2004 10:19 GMT
> You looking for fast implementation or most robust library? I'm using a
> couple of simple classes from an IBM article that allows *extremely* quick
[quoted text clipped - 4 lines]
>
> http://www.javaworld.com/javaworld/jw-10-2002/jw-1004-dialog.html
The article's LabelledItemPanel makes simple things easy
but it lays out poorly, and hard stuff remains impossible.
With the default look&feel the label and component texts
are unaligned in *every row*. And the panel won't retain
proportions if you change the font, font size or resolution.
Here's an alternative:
FormLayout layout = new FormLayout("right:pref, 4dlu, pref");
DefaultFormBuilder builder = new DefaultFormBuilder(layout);
builder.setDefaultDialogBorder();
builder.append("&Customer Code", customerField);
builder.append("&Name", nameField);
...
builder.append("&Email", emailField);
return builder.getPanel();
I'd say the alternative is quick too. In addition to the
LabelledItemPanel it offers more flexiblity - if necessary.
Label and component will be associated using #setLabelFor,
the layout will retain proportions, you can mix it with
any custom panel implementation, and it honors the component
orientation left-to-right vs. right-to-left.
The Forms button bar for OK, Cancel gives both buttons the same
dimension and honors the platform's minimum size for buttons.
The order on a PC will be "OK, Cancel", and on a Mac "Cancel, OK";
all this just by invoking ButtonBarFactory#buildOkCancelBar
Hope this helps,
Karsten
krc - 22 Jan 2004 05:53 GMT
Thanks to you all for your messages. We are currently inclined towards
using Swing. But we will definitely consider all the suggestions
mentioned in the above mails.
-krc.
> > You looking for fast implementation or most robust library? I'm using a
> > couple of simple classes from an IBM article that allows *extremely* quick
[quoted text clipped - 37 lines]
> Hope this helps,
> Karsten