Mi piacerebbe sapere come modificare il carattere per il valore visualizzato/selezionato in un JComboBox
. PER ESEMPIO.Font personalizzato per JComboBox
La resa superiore del Aharoni
(immagine cortesia della this answer).
posso cambiare i valori della lista con un renderer come questo:
public class JComboBoxItalic extends BasicComboBoxRenderer {
protected DefaultListCellRenderer defaultRenderer = new DefaultListCellRenderer();
public Component getListCellRendererComponent(JList list, Object value, int index, boolean isSelected, boolean cellHasFocus) {
Font theFont = null;
JLabel renderer = (JLabel) defaultRenderer.getListCellRendererComponent(list, value, index, isSelected,cellHasFocus);
theFont = new Font("Courier", Font.ITALIC, 14);
renderer.setFont(theFont);
return renderer;
}
}
Ma questo non pregiudica il valore selezionato quando la scatola è chiusa. Qualche idea?
Utilizzare invece Html per manipolare il tipo di carattere e la dimensione .. Basta una sugegsione. – ErrorNotFoundException
@Stanley * "Solo una suggezione" * Non molto buono. Inserendo le stringhe HTML come valori, invece di recuperare valori come 'Apple' otteniamo'
Apple' - orribile abuso dell'API. –se ogni elemento contiene variabili 'how-to-display' allora perché non cambiare semplicemente le variabili 'how-to-display'? – Infested