Salve a tutti, sto realizzando un'applicazione in java la cui interfaccia grafica è stata fatta grazie alle librerie swing.
A parità di versione della java virtual machine della macchina su cui gira l'applicazione, ci sono due differenze sostanziali a seconda che il file jar prodotto venga eseguito su una macchina linux, windows oppure mac:
Ad un JButton ho assegnato un colore blu specifico:
codice:
setForeground(new Color(21,64,97));
Tale colore viene correttamente visualizzato su macchine windows e linux, mentre un mac sembra non riconoscerlo ed assegna al bottone il colore di default.
Inoltre, ad un JOptionPane ho assegnato un array di JButton che in soldoni permette di realizzare i bottoni "Si" e "No":
codice:
optionPane = new JOptionPane(message,JOptionPane.QUESTION_MESSAGE,JOptionPane.DEFAULT_OPTION,(Icon)Icona.get("dialog_domanda"));
YesButton = new MyButtonLight("Si",Icona.get("si"));YesButton.addActionListener(this);
NoButton = new MyButtonLight("No",Icona.get("no"));NoButton.addActionListener(this);
options = new MyButtonLight[] {YesButton,NoButton};
optionPane.setOptions(options);
Su windows e linux viene visualizzato a sinistra il bottone "Si" e a destra il bottone "No" (come dovrebbe essere), mentre il mac inverte l'ordine dei due pulsanti.
Ora vi chiedo:
1 - perchè il mac si comporta diversamente?
2 - come fare in modo che il mac si comporti come windows e linux?
Ringrazio chi volesse darmi una mano...