PDA

View Full Version : [JAVA NETBEANS] Look and Feel (stile finestre) di sistema anzichè customized java


VegetaSSJ5
05-06-2008, 22:15
Con Netbeans creando un'applicazione Desktop (File -> New Project -> Java -> Java Desktop Application) ti mette subito a disposizione lo strumento per modificare la main form. Già dal progetto vuoto se si fa il Run dell'applicazione appare una finestra che ha chiaramente lo stile (colori, stile pulsanti, font delle scritte...) di sistema.

Creando un'applicazione generica (File -> New Project -> Java Application) e quindi aggiungendo una JFrame Form (Click col destro sul progetto -> New -> JFrame Form), se si esegue il progetto la finestra invece appare con gli stili personalizzati java che, oltre al fatto che non mi piacciono, cambiano completamente la posizione degli oggetti nel form rispetto a come li si era disposti nello strumento design.

Mi sembra di capire che questo possa dipendere da una proprietà raggiungibile attraverso il percorso: Proprietà del progetto -> Application -> Desktop App -> Look & Feel -> System Default.

Il problema è che questa proprietà è selezionabile solo per le Java Desktop Application ma non per le Java Application in quanto in quest'ultimo caso manca proprio la scheda Desktop App tra le proprietà.

Com'è possibile creare delle finestre con lo stile di default di sistema anche con le Java Application?


In alternativa si potrebbe anche scegliere di sviluppare una Java Desktop Application, tuttavia questa crea per default una finestra con una barra dei menu sopra e una progress bar in basso. Ma se a me questi elementi non servono e li provo a togliere (selezionandoli e premendo Canc) il programma poi manco si compila!!

Suggerimenti?

Grazie

Don[ITA]
06-06-2008, 01:36
Dai un occhio a questa libreria. (https://substance.dev.java.net/)
Trobi ache il codice per usarla, se non ci riesci fai un fischio che te lo dico io ;)
Contiene un sacco di look and feel per le tue finestre java :D

ciauz

VegetaSSJ5
06-06-2008, 07:47
mi pare strano che uno debba utilizzare una libreria esterna per fare qualcosa che si può fare con lo stesso ide (ma con impostazioni diverse). inoltre daun velocisssssimo sguardo (:D ) quella libreria mi pare contenga troppo look and feel... a me serve semplicemente solo quello di windows... :D

banryu79
06-06-2008, 10:10
Potresti consultare i javadoc della classe javax.swing.UIManager (http://java.sun.com/j2se/1.5.0/docs/api/javax/swing/UIManager.html):
sicuramente ti sarà possibile settare il LookAndFeel di sistema.

VegetaSSJ5
06-06-2008, 21:46
risolto anche questo! :yeah:

bisogna dare una di queste due istruzioni (possibilmente come prima istruzione del main). sono equivalenti, nel senso che producono lo stesso risultato.... ;)

javax.swing.UIManager.setLookAndFeel("com.sun.java.swing.plaf.windows.WindowsLookAndFeel");
javax.swing.UIManager.setLookAndFeel(javax.swing.UIManager.getSystemLookAndFeelClassName());

khelidan1980
06-06-2008, 23:41
oppure ci sono le swt per avere un look integrato molto bene al sistema in uso,non so quanto sian portabili però

Albi89
07-06-2008, 12:34
oppure ci sono le swt per avere un look integrato molto bene al sistema in uso,non so quanto sian portabili però

In che senso, non sono quelle che usa Eclipse?
Dovrebbero essere abbastanza portabili

-Slash
07-06-2008, 13:52
ma quindi si puo avere un look integrato nel sistema operativo in uso(win, linux, macosx) anche con le swing?

VegetaSSJ5
07-06-2008, 14:21
ma quindi si puo avere un look integrato nel sistema operativo in uso(win, linux, macosx) anche con le swing?
http://www.gioconomicon.net/modules/Forums/images/smiles/sisi.gif

khelidan1980
07-06-2008, 14:34
In che senso, non sono quelle che usa Eclipse?
Dovrebbero essere abbastanza portabili

guarda avevo dato un occhiata,non sono portabili nel senso che dovrebbero usare chiamate jni,dipendenti dal sistema in uso,credo che le modifiche al codice da parte dell'utente non debbano essere molto ma devi comunque preparare una versione del programma per win e una per unix,come fa anche eclipse

khelidan1980
07-06-2008, 14:36
http://www.gioconomicon.net/modules/Forums/images/smiles/sisi.gif

ma non si tratta piu di un'imitazione?Non usano comunque i widget nativi

VegetaSSJ5
07-06-2008, 14:56
ma non si tratta piu di un'imitazione?Non usano comunque i widget nativi
guarda a me non sembra... :boh:
prova a disegnarti una gui con netbeans e guarda come ti viene fuori...