2010-04-07 34 views
22

Sto lavorando a un progetto che utilizza Java Swing. L'aspetto predefinito della Java Swing GUI è molto noioso. C'è un modo in cui posso usare un aspetto migliore? Qualcosa di simile sulle pagine web ...Come migliorare l'aspetto grafico di JAVA swing GUI?

+1

passare a Silverlight :-) (è uno scherzo) – Dani

+0

Ciao tutte le tue risposte sono molto utili. Ora ho del cibo per il mio cervello. Proverò tutte queste cose e scelgo quale sia sempre l'opzione migliore;). Molte grazie ! – Mandar

risposta

50

È possibile impostare il look and feel in modo da riflettere la piattaforma:

try { 
    UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName()); 
} catch (Exception e) { 
    e.printStackTrace(); 
} 

Se questo non è abbastanza piacevole per voi, dare un'occhiata a SWT for Eclipse.

+3

Probabilmente la raccomandazione più semplice.Con fortuna, potrebbe essere esattamente ciò che l'OP voleva! –

+0

ciao frederik ho provato questo. è così carino grazie per il vostro aiuto. questa era una cosa che volevo. – Mandar

+0

Felice di aiutare :) –

1

Puoi dare un'occhiata here. Ho cercato su Google il tema dello swing.

Detto questo, se stai facendo un progetto per hobby, cambiare il LAF non è un problema. Se stai facendo software per i tuoi amici, non è un problema. Se fai software per i clienti, mantieni l'impostazione predefinita. Funziona bene e non è troppo eccitante :)

+0

In realtà, direi che passare dal default Metal L & F al sistema L & F sarebbe molto meglio per la maggior parte dei clienti. –

+0

@Michael Borgwardt OK. Sono d'accordo con te lì. Quello che ho provato a dire è che una noiosa interfaccia grafica non è un problema per la maggior parte degli utenti, a loro piace qualcosa di standard. – extraneon

+2

Penso che questa sia una giusta affermazione. La mia esperienza è che l'utente si spaventa vedendo un gui con cui non ha familiarità. Hanno bisogno di qualcosa a cui possono riguardare. Che migliora anche l'usabilità. –

1

Un'altra opzione è lo Plastic Look-and-feel. Offre alle app di Swing un aspetto simile a XP e offre molte opzioni di personalizzazione.

MODIFICA: Ho appena notato che le immagini su quella pagina sono rotte. Se fai clic sul numero JGoodies Looks page, puoi almeno vedere 3 esempi di ciò che puoi ottenere con quegli sguardi.

2

se sei bravo con negozio Photo si poteva dichiarare il JFrame come non decorato e creare la propria immagine che sarà server come GUI personalizzata.

in questo esempio si riferisce a JFrame come frame.

JFrame frame = new JFrame(); 
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
frame.setSize(800, 600); 
//If you want full screen enter frame.setExtendedState(JFrame.MAXIMIZE_BOTH); 
frame.setUndecorated(true); 

ora che la JFrame ha il suo confine e personalizzati GUI, se hai definito i tuoi pulsanti personalizzati per minimizzare, massimizzare, e uscire è necessario porre un JPanel sopra i pulsanti e dichiarare cosa quei bottoni faranno in una funzione listener di azione (lol mi dispiace ... non so se si chiama funzione come C++ o classe ...) per esempio ci riferiremo al JPanel come pannello e imposteremo un pulsante di uscita.

panel.addActionListener(new ActionListener(){ 
@Override 
public void actionPerformed(ActionEvent e){ 
System.exit(JFrame.EXIT_ON_CLOSE); 
}); 
}