PDA

View Full Version : [Java] Grafica pulsanti, da "netbeans a run"...


Fire Fox II
23-02-2011, 11:54
Salve raga

sto realizzando un piccolo software in java e per la prima volta (mi sa anche l'ultima) sto utilizzando netbeans per le swing...

Ora succede che in ambiente di lavoro le grafica viene visualizzata in un certo modo, quando avvio il prog viene visualizzata in modo diverso...

Esempio con netbeans

http://img7.imageshack.us/img7/1618/netsi.png

Esempio in modalità esecuzione

http://img88.imageshack.us/img88/536/runx.png

Come potrei fare in modo che venga visualizzato tutto come "netbeans" ?

Thanks :)

PGI-Bis
23-02-2011, 12:07
Devi impostare il look and feel di swing all'avvio del programma. Credo che matisse usi il look and feel di sistema, quindi in codice basta aggiungere la riga:

try {
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
} catch(Exception ex) {
System.out.println(ex.getMessage());
}

Magari c'è anche la possibilità di specificare il look and feel con qualche pannello delle proprietà ma non ne sono sicuro.

PGI-Bis
23-02-2011, 12:08
PS: il codice su riportato deve essere la prima istruzione eseguita dall'edt.

banryu79
23-02-2011, 12:11
Succede perchè NetBeans usa il "Look And Feel" nativo del tuo sistema operativo per disegnare i componenti grafici.

Invece quando lanci in esecuzione l'applicazione, se non specifichi esplicitamente un "Look And Feel", viene usato quello "cross platform" (Si chiama MetalLookAndFeel).

Puoi usare il LAF del sistema così:

import javax.swing.UIManager;
...
public static void main(String[] argv) {
try {
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
} catch (Exception ex) {
System.out.println("Impossibile caricare il System LAF... Ti ciucci quello cross-platform");
}

// resto del programma...
}

Fire Fox II
23-02-2011, 12:18
Grazie ad entrambi :)

Anche per la print sull'eccezione... :asd: