Can Java do fancy GUIs?

R

Ramon F Herrera

So far, I have been programming my interfaces by picking the available
Swing components in my IDE. Sometimes, however, a programmer needs a
richer visual interface. I have always noticed that the standard
(compiled, non-Java) Windows programs tend to have a more professional
look than their Java counterparts.

Let me give an example: I have a program that displays and manipulates
images and I am really jalous of the way the "Zoom Toolbar" looks in
Adobe Acrobat. That's the kind of visual quality that I am trying to
achieve. Is it possible to write an exact (or close) replica of that
zoom toolbar in Java? With the "floating" toolbars that somehow deck
next to each other?

I have read a little about JavaBeans. Is this what JavaBeans is for?
To achieve very nice and professional looking widgets? How hard (and
expensive) is it to have a high quality JavaBean custom written for
you?

TIA,

-Ramon F Herrera
 
I

IchBin

Ramon said:
So far, I have been programming my interfaces by picking the available
Swing components in my IDE. Sometimes, however, a programmer needs a
richer visual interface. I have always noticed that the standard
(compiled, non-Java) Windows programs tend to have a more professional
look than their Java counterparts.

Let me give an example: I have a program that displays and manipulates
images and I am really jalous of the way the "Zoom Toolbar" looks in
Adobe Acrobat. That's the kind of visual quality that I am trying to
achieve. Is it possible to write an exact (or close) replica of that
zoom toolbar in Java? With the "floating" toolbars that somehow deck
next to each other?

I have read a little about JavaBeans. Is this what JavaBeans is for?
To achieve very nice and professional looking widgets? How hard (and
expensive) is it to have a high quality JavaBean custom written for
you?

TIA,

-Ramon F Herrera

I really enjoy *JGoodies Forms*. They are free. http://www.jgoodies.com/

Their layout manager walks rings around say Gridbag or any of Sun's
layout managers. They are simple to implement also. JGoodies also have
their own set of "Looks & Feel"s. These integrate very nicely with other
LAF's. They also have an animation library. Have not used that yet but
may integrate into my website.

To see them, from my use in action, you can go to my website. Sorry I am
still building the website. Anyway, go to the screenshots under the "Pro
Versions" tab for JHackerAppManager.

Website address: http://24.115.55.47:8080/JHackerAppManager/

I was going to add some screenshots of the possible "Looks & Feel"s
combined with Goodies forms but have not added those yet.

Enjoy...
--

Thanks in Advance...
IchBin
__________________________________________________________________________

'The meeting of two personalities is like the contact of two chemical
substances: if there is any reaction, both are transformed.'
- Carl Gustav Jung, (1875-1961), psychiatrist and psychologist
 
K

kjc

Ramon said:
So far, I have been programming my interfaces by picking the available
Swing components in my IDE. Sometimes, however, a programmer needs a
richer visual interface. I have always noticed that the standard
(compiled, non-Java) Windows programs tend to have a more professional
look than their Java counterparts.

Let me give an example: I have a program that displays and manipulates
images and I am really jalous of the way the "Zoom Toolbar" looks in
Adobe Acrobat. That's the kind of visual quality that I am trying to
achieve. Is it possible to write an exact (or close) replica of that
zoom toolbar in Java? With the "floating" toolbars that somehow deck
next to each other?

I have read a little about JavaBeans. Is this what JavaBeans is for?
To achieve very nice and professional looking widgets? How hard (and
expensive) is it to have a high quality JavaBean custom written for
you?

TIA,

-Ramon F Herrera
I don't undestand what you're talking about.
I developed a "point of sale" system with Swing.
That's about as complex a GUI as you can get. Image buttons etc...Using
standard Swing components.
 
R

Ramon F Herrera

It's quite simple, really.
My standards are higher than yours.
I aspire to have the same quality as the very best graphical designers
on the planet (Adobe, the creators of the electronic font, press,
logos, etc.) while you are satisfied with whatever Swing provides.

-Ramon
 
T

Tor Iver Wilhelmsen

Ramon F Herrera said:
I aspire to have the same quality as the very best graphical designers
on the planet (Adobe, the creators of the electronic font, press,
logos, etc.) while you are satisfied with whatever Swing provides.

In other words you intend to go through life dissatisfied.

You give the impression of having the same disease as many in the
games industry, where the looks are more important than the function.
You will find that users prefer simple software that WORKS instead of
over-designed bells and whistles GUIs which confuse.
 
T

Tomislav

Tor said:
You give the impression of having the same disease as many in the
games industry, where the looks are more important than the function.
You will find that users prefer simple software that WORKS instead of
over-designed bells and whistles GUIs which confuse.

It's so sad to hear someone so out of touch with reallity, but at the same
time, out of touch in a nobel-programmer sort of way. ;)
I'd say that practically every application has two very distinguishable parts:
the part that challenges the programmers abilities, that a programmer derives
the most satisfaction and the part the users criticize most - how the data and
the data manipulation interface looks like. The second is all about "a little
bit to the left", "group this with thees, rather than those" and "oh, and I
need 5 more ways to see the same data" - not very stimulating for a systems
designer and it shows.
 
K

karlheinz klingbeil

Ramon F Herrera schrub am Samstag, 16. April 2005 05:07
folgendes:
It's quite simple, really.
My standards are higher than yours.
I aspire to have the same quality as the very best
graphical designers on the planet (Adobe, the
creators of the electronic font, press, logos, etc.)
while you are satisfied with whatever Swing provides.

Swing provides areas of your screen
(buttons,labels,panels...), which have a kind of
graphics context. You can paint freely in this context
to get your "personal" look.
So what you're saying is that you really aren't able to
draw what you want to see ??
 
D

David Segall

Tor Iver Wilhelmsen said:
You will find that users prefer simple software that WORKS instead of
over-designed bells and whistles GUIs which confuse.
There are two problems with that sentence. First, you contrast two
objects that are not comparable. Second, the OP wanted to model his
software on a program that must be installed on more computers than
_any_ other piece of software.
 
R

Ramon F Herrera

In other words you intend to go through life dissatisfied.

That's my curse. :)

If people were satisfied with what is out there, we wouldn't have Java
or the Macintosh.

I just want software which is designed to satisfy both sides of the
brain. Have you heard of "form follows function"?

Do you know what percentage of the brain is exclusively dedicated to
visual processing? I don't remember the figure, but it is a huge
percentage.

-Ramon
 
T

Thomas G. Marshall

Tor Iver Wilhelmsen coughed up:
In other words you intend to go through life dissatisfied.

You give the impression of having the same disease as many in the
games industry, where the looks are more important than the function.
You will find that users prefer simple software that WORKS instead of
over-designed bells and whistles GUIs which confuse.


I'm with you in your argument right up until this post. Your heart is very
much in the right place, but It is not a black a white subject (no pun re:
color graphics) and as such I'll try to simply list out what I've determined
to be the facts over the years. Come to think of it, I think you and I had
this discussion before. (?)

1. Functionality is obviously extremely important,
but you can actually (believe it or not) lose a part
of your functionality and replace it with glitz and
you will sell more product. I've discovered that
Engineers as customers /sometimes/ see this
differently, but engineers are often not where the
real money is.

2. Much of what frustrates an engineer with the
swing out-of-the-box design is that until you really
know what you are doing it is very hard to tweak
the gui into what you might view as perfection.
Such tweaking isn't always simple "useless" glitz:
sometimes the seemingly cosmetic improvements
to a gui result in an improvement to its usability.

3. And even if you are not after the high-end glitz I
am referring to, swing (even with the windows
LaF) somehow just never looks /quite/ like the
other windows applications running. I personally
find that irritating.

I've come to these conclusions as a result of being in the computer graphics
and GUI design and philosophy business for the 20+ years I've been creating
software, as from being in java since the beta.

Now, IMO where Ramon has gone entirely wrong is in making the assumption
that you cannot fully tailor swing to do whatever you like. You can, and I
done so repeatedly in both the AWT and Swing venues. I haven't ventured
into IBM's SWT yet, thought I suppose it's inevitable. It's just that peer
based component design give me the willies :)
 
R

Ramon F Herrera

You give the impression of having the same disease as many in the
games industry, where the looks are more important than the function.
You will find that users prefer simple software that WORKS instead of
over-designed bells and whistles GUIs which confuse.

The only Java utility that I have seen out there that "rocks" is
JDiskReport by a company:

http://www.jgoodies.com

whose motto is: "We make Java look good and work well".

Why do you figure JDiskReport is their most popular product?

It seems to me that if one wants to impress a potential customer with a
prototype, the very first thing you have to do is to disguise the
visual part, so they don't know that it is written in Java.

Oh, speaking of the game industry. Did you know that they are bigger
than Hollywood (not that I care much for games)?

-Ramon
 
K

kjc

Ramon said:
It's quite simple, really.
My standards are higher than yours.
I aspire to have the same quality as the very best graphical designers
on the planet (Adobe, the creators of the electronic font, press,
logos, etc.) while you are satisfied with whatever Swing provides.

-Ramon
Wow, i'm impressed. NOT.

How many business types give a damn about flashing widgets, and mini
movies playing on their desktops while they are manipulating
equities,commodities and deniro.
let me answer that question for ya. NONE.

And, yes, I am satisfied with what Swing and its architecture provides,
as I'M creative enough to use the myriad of graphic design knowledge I
have at my disposal.


If you're too lazy to do the work required, then step off and use VB or
something.
 
K

kjc

Ramon said:
That's my curse. :)

If people were satisfied with what is out there, we wouldn't have Java
or the Macintosh.

I just want software which is designed to satisfy both sides of the
brain. Have you heard of "form follows function"?

Do you know what percentage of the brain is exclusively dedicated to
visual processing? I don't remember the figure, but it is a huge
percentage.

-Ramon
You're stuck in your head dude.
Get out and do some work.

Sounds like you just don't know what you're doing in the Java Swing world.
 
K

Karsten Lentzsch

Ramon said:
[...] I have always noticed that the standard
(compiled, non-Java) Windows programs tend to have a more professional
look than their Java counterparts.

That's true for many Java apps. But as you've seen with JDiskReport,
Java applications can compete with or even outperform native apps.
[...] Is it possible to write an exact (or close) replica of that
zoom toolbar in Java? [...]

Yes. Java, Java2D and Swing make up a very powerful toolkit
for many kinds of well designed UIs, visual appealing stuff,
and even advanced presentations that most native apps can't
offer easily.

However, the quality comes at a price. If you master Swing,
or more generally the Java Foundation Classes, and have learned
about the many Don't and Do's, then you can build elegant apps.
If you want to go further and want to impress your users with
fancy visuals and cool stuff, the price gets even higher.

Anyway, I provide a set of free libraries and articles
that are intended to help Java developers design better
applications faster and at reasonable development costs.
See the JGoodies download section and my article page at:
http://www.jgoodies.com/articles/

Best regards,
Karsten Lentzsch
 
P

Paul Tomblin

In a previous article said:
So far, I have been programming my interfaces by picking the available
Swing components in my IDE. Sometimes, however, a programmer needs a
richer visual interface. I have always noticed that the standard
(compiled, non-Java) Windows programs tend to have a more professional
look than their Java counterparts.

If you want an example of what can be done with a few custom widgets and
some gratuitous hacking on a custom Look and Feel, have a look at
http://xcski.com/gallery/screenshots/sched_collapse and
http://xcski.com/gallery/screenshots/playlist_main which are screen shots
of an application I helped write. It wasn't quite complete there, so
there are a few things that are square boring standard Swing components,
but the tabs, the rounded corners, the "rivets" in the corners, and the
time line are all my attempts to implement something that looked like what
the graphics designer wanted. Originally we used a textured brushed metal
look, but it made the display too slow when running on an LTSP X terminal.
Now that we're not LTSPs any more, I might put the brushed metal back in.
 
E

Edwin Martin

Ramon said:
Do you know what percentage of the brain is exclusively dedicated to
visual processing? I don't remember the figure, but it is a huge
percentage.

This is an excuse for bad GUI's.

A good GUI keeps the brain processing of users to a minimum.

This means presenting a user interface the user already knows.

This also means keeping the self-made widgets to a minimum (only use
them when the OS-provided widgets can't give the usability you need).

Personally, I always have the most trouble with self-made GUI's like
Winamp, Windows Media Player, Software DVD-players etc. They're a disease.

Edwin Martin
 
D

Dag Sunde

Ramon,

Take a look at Photomesa, a 100% pure java, swing-based desktop
application that will simply blow you away.

http://www.windsorinterfaces.com/photomesa.shtml

While it's currently a shareware application, at some point it was a
work-in-progress, with source code avaialble...

http://www.cs.umd.edu/hcil/photomesa/download/layout-algorithms.shtml
http://www.cs.umd.edu/hcil/jazz/

I don't know if this helps, hope so...

While that is probably a very powerful application that fullfill
your needs, it was a very bad argument in a discussion concerning
swing vs. elegant and "sexy" GUI...

That is propably the most horrible UI I've seen in a long time.
It breaks almost every rule from the "divine proportion" and
balance, to simple common sense...

just my 2 cents worth...
 
T

Thomas G. Marshall

Edwin Martin coughed up:
This is an excuse for bad GUI's.

A good GUI keeps the brain processing of users to a minimum.

This means presenting a user interface the user already knows.

This also means keeping the self-made widgets to a minimum (only use
them when the OS-provided widgets can't give the usability you need).

The goal of a good GUI is to facilitate use and also to limit the questions
that form in the user's head during the interaction session. This often
means graying out buttons, instead of removing them, and not having certain
interfaces visible at all (not even grayed) when they might form the
question: "do I need to do to un-gray these?". Dependent, of course, on the
context and details of the issue at hand.

This is potentially a very long topic.

The problem is that often self-made widgets do the best job at limiting the
questions and facilitating use.

Personally, I always have the most trouble with self-made GUI's like
Winamp, Windows Media Player, Software DVD-players etc. They're a
disease.

Those are usually examples of skinning gone awry. For example, Nero does a
great job at confusing the crap out of me. They make the hideous mistake,
which is a very common one, of providing an interface that looks fully
raytraced without thought as to which button gives me options, which part
can I drag the GUI with, etc., etc.
 
D

David Segall

Ramon F Herrera said:
So far, I have been programming my interfaces by picking the available
Swing components in my IDE. Sometimes, however, a programmer needs a
richer visual interface. I have always noticed that the standard
(compiled, non-Java) Windows programs tend to have a more professional
look than their Java counterparts.

Let me give an example: I have a program that displays and manipulates
images and I am really jalous of the way the "Zoom Toolbar" looks in
Adobe Acrobat. That's the kind of visual quality that I am trying to
achieve. Is it possible to write an exact (or close) replica of that
zoom toolbar in Java? With the "floating" toolbars that somehow deck
next to each other?

I have read a little about JavaBeans. Is this what JavaBeans is for?
To achieve very nice and professional looking widgets? How hard (and
expensive) is it to have a high quality JavaBean custom written for
you?

TIA,

-Ramon F Herrera
I don't have access to Acrobat but if you are only talking about the
zoom toolbar in the Acrobat Reader I am sure that you can reproduce
this using Swing. Netbeans, which is written in Java, has similar
tools. Unfortunately my Swing talents are not up to the task and you
seem to have upset the contributors in these groups who could have
given you the answer. I can only suggest you post again describing
exactly what you want to do and omitting the "more professional" and
"richer visual interface" bits.

To be truthful, I am impressed with the Acrobat Reader splash screen.
How do they do those swirly bits in Java or any other language?
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,982
Messages
2,570,186
Members
46,739
Latest member
Clint8040

Latest Threads

Top