Salve,
sto cercando di creare dei pulsanti personalizzati. Ho impostato l'icona di default (quando non selezionato) a un JToogleButton a icon-Off, e questo è ok, ma vorrei visualizzare un'icona diversa, icon-On, quando il JToogleButton è schiacciato nello stato selected. Tra i vari metodi per impostare le icone ho trovato setSelecteIcon() che mi sembrava quello giusto. In effetti mi cambia l'icona quando selezionato ma ha un effetto collaterale fastidioso come se mi attivasse il rollover. Cioè, quando è disattivato, passando sopra con il mouse mi cambia l'icona a ico-On, come se con il passaggio del mouseil pulsante, prendendo il focus, si considerasse come selezionato e quindi mi attiva la icon-On. Ma così non va bene. Ho raggiunto il risultato voluto gestendo l'evento ItemStateChanged:
codice:
    private void jToggleButton1ItemStateChanged(java.awt.event.ItemEvent evt) {            
        int status = evt.getStateChange();
            if(status == ItemEvent.SELECTED){ 
                 jToggleButton1.setIcon(ico1);//ico-On
            }else if(status == ItemEvent.DESELECTED){
                jToggleButton1.setIcon(ico2);//ico-Off
            }
    }
Ma mi sembra uno spreco, possibile che non ci sia un metodo che mi permetta di selezionare l'icona allo stato selected senza effetti collaterali.
Grazie