5

で表示/選択された値のフォントを変更する方法を知りたいJComboBoxです。例えば

の上部のレンダリング(この回答Aharoniの画像提供)。

次のようなレンダラーでリストの値を変更できます。

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;
    }
}

ただし、これは、ボックスが閉じているときに選択された値には影響しません。何か案は?

4

1 に答える 1