tags:

views:

780

answers:

9

I made this in Photoshop and I plan to use it for my file sharing application:

Screenshot

I was wondering if it was possible to create GUI for my application that is gonna have this look and feel.

If I can't build it only by using eclipse or NetBeans, are there any other tools that could help me?

+4  A: 

It's possible. But for most Java developers, it would require suppressing the gag reflex at such an ugly interface.

Here's a Java interface I wrote using no tools other than vi. I didn't design it, I just took the artists design, held my nose, and implemented it.

As for specifics, I'd suggest doing as much of the look and feel through the pluggable look and feel in Swing. Also, use LayoutManagers rather than making things constant sizes in constant locations, so that things can grow and shrink to different screen resolutions and also so that if you translate things you don't end up having to resize all your text labels and then shuffling everything else around.

Paul Tomblin
+1 OK, nice. Diet Coke all over my keyboard now. *shakes fist*
skaffman
If you want to ask a specific question, ask a specific question. Otherwise don't whinge that I answered your "Is it possible" question.
Paul Tomblin
OKAY, let me be precise. Which program or tools should I use for making my custom GUI?
AmateurProgrammer
That one seems rather complicated. Thanks for the example.
AmateurProgrammer
The only program or tool I would suggest is a good editor, and a web browser for looking up stuff. That's all I ever used.
Paul Tomblin
+10  A: 

Oh dear, no-no-no! If you want your users' eyes to bleed, then go for it. Otherwise, follow whatever UI guidelines appropriate for your platform.

To answer your question: this is certainly doable in any modern windowing system.

Here's what generally happens when programmers design UIs:

wGetGUI

Anton Gogolev
ah, lovely... designed for engineers, by engineers...
skaffman
That looks like usual GUI with general GUI components. I want something to create custom components for example like those in the picture I added. Is there any software for that sort of thing?
AmateurProgrammer
@AmateurProgrammer you missed the point completely! :)
James
I understand what you all wanted to say. Programmers ARE NOT designers. That's a general fact :)
AmateurProgrammer
This actually looks better than most UIs I've seen here. I'm not kidding.
MetalMikester
I see a "Simple" tab pretty prominently there. I bet it has fewer tweakable options. It should probably be the default open tab for first-time use, but other than that...looks fine to me.
Carl
+1 Could be worse, at least no fancy colors were used xD
Helper Method
+8  A: 

You can and even you can change it dynamically - see Look-n-Feel feature of swing

St.Shadow
+1  A: 

You'll have to create a lot of custom JComponents. Other than that, possible.

Geo
+1  A: 

It is very possible using Swing.

Check out the NetBeans GUI Builder

n002213f
I know how to use Swing, just didn't know all the options. Thanks
AmateurProgrammer
+1  A: 

Well thats very much possible, although alot of Java Swing developers might not agree with the UI in the image. perhaps rightly so.

Although to make it very possible try looking at JWindow, JTable, ImageIcon, Dimension, JProgressBar. You will also need ample of understanding for Java Layouts, and Events such as MouseEvents, ActionEvents.

Hope that helps.

Shaaf
It does help me.I cover all the basics concerning GUI, but this is something that is still out of my league.
AmateurProgrammer
+3  A: 

Creating new LaF is too much. Since all your JButtons are different, just use JButton.setIcon() and JButton.setPressedIcon() and use your images. The rest is loading background and using strange fonts. Use Font.createFont() to load custom fonts. You'll probably have to draw your own JProgressbar. Override JProgressBar.paintComponent(Graphics g) and draw your own image.

tulskiy
+1  A: 

I would recommend

MiG Layout

for laying out components, it's very easy to grasp and is also way more powerful than the standard layout managers (and it's got a nice debugging mode, too).

Helper Method
"layouting"?? Are there any "lays" in the closet... perhaps, "laying out components"?
Software Monkey
Oh, sry for that xD
Helper Method
+5  A: 

Is not only possible but quite easy, you don't have to go all the way to create a custom Look and Feel.

This is what I've made in 20 minutes:

20mins

There is a lot of information on the web on how to customize the components without having to create a whole new L&F.

Understanding the Swing Architecture helps a lot.

Just in case you haven't read it the Swing Tutorial is here.

Finally you'll need the doc: Java doc

OscarRyz
JButton.setBorder(BorderFactory.createEmptyBorder()); and JButton.setOpaque(true); are your friends.
tulskiy