Come faccio ad ottenere il nome della piattaforma su cui gira un applicazione java??
Ciao![]()
Come faccio ad ottenere il nome della piattaforma su cui gira un applicazione java??
Ciao![]()
Nulla, ma e' sempre qualcosa.
Con:
ottieni un oggetto di tipo LookAndFeel. Il metodo getName, ti da' il nome del L&F.codice:UIManager.getLookAndFeel();
Folle e' l'uomo che parla alla luna.
Stolto chi non le presta ascolto.
Sono pienamente d'accordo, ma come faccio ad impostare il LookAndFeel in base alla piattaforma in cui gira?codice:UIManager.LookAndFeelInfo looks[] = UIManager.getInstalledLookAndFeels(); try{ UIManager.setLookAndFeel(looks[2].getClassName()); SwingUtilities.updateComponentTreeUI(this); }catch(Exception e){ e.printStackTrace(); }
Con l'istruzione sopra sono io a dire di applicare il look[2]
corrispondente a windovs ma se si trovasse a girare su unix credo che gli verrebbe da vomitare....![]()
Nulla, ma e' sempre qualcosa.
devi recuperare la System.property che cerchi; forse la più adeguata è os.name:
Qui trovi l'elenco:codice:System.getProperty("os.name");
http://java.sun.com/docs/books/tutor...roperties.html
Fai così:
Ciao.codice:public static void main(String [] args) { try { UIManager.setLookAndFeel( UIManager.getSystemLookAndFeelClassName() ); } catch (Exception e) { e.printStackTrace(); } ... // Avvia la tua applicazione }![]()
"Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza
Ok adesso funziona!!!!
Nulla, ma e' sempre qualcosa.
Ah ciao Lele!! non avevo visto che eri tu!!
Nulla, ma e' sempre qualcosa.
Funziona anche con System.getProperty("os.name");
e con una condizione if imposto il LookAnd Feel
ma credo che sia meglio usare
perche' cosi' e' indipendente dai nomi da utilizzare nel sorgentecodice:UIManager.setLookAndFeel( UIManager.getSystemLookAndFeelClassName() );
e' ottieni in maniera piu' efficiente il LookAndfeel appropriato.
Ciao
![]()
Nulla, ma e' sempre qualcosa.
Pero' c'e' una cosa da dire anche se imposto volontariamente il LookAndFeel cio' che e' la barra del titolo rimane invariata e visualizzata in base al os corrente.
Ho trovato che si puo' modificare la barra del titolo con:
Ma cosi ottengo il LookAndFeel del' os corrente o quello di default di java.codice:MyApp app = null; app.setDefaultLookAndFeelDecorated(True/*o false*/); app = new myApp();
Da notare che tale metodo va applicato all'handle prima che venga istanziato altrimenti non funziona.
O forse bisogna applicare
anche se viene prima istanziato??codice:SwingUtilities.updateComponentTreeUI(app);
Ora provo....
Nulla, ma e' sempre qualcosa.
Niente da fare devo applicare il metodo prima di istanziare la mia classe!
Nulla, ma e' sempre qualcosa.