假设我要对JComboBox中的箭头使用自定义图像,该怎么做?
我知道可以使用synth xml文件甚至UIManager.put(…),但是我不知道如何。我现在要做的就是将箭头图像更改为其他图像,无论是以编程方式还是仅覆盖其使用的图像。我到底该怎么做?
您可以createArrowButton()在中覆盖BasicComboBoxUI。BasicArrowButton是一个方便的起点。
createArrowButton()
BasicComboBoxUI
BasicArrowButton
class ColorArrowUI extends BasicComboBoxUI { public static ComboBoxUI createUI(JComponent c) { return new ColorArrowUI(); } @Override protected JButton createArrowButton() { return new BasicArrowButton( BasicArrowButton.SOUTH, Color.cyan, Color.magenta, Color.yellow, Color.blue); } }
然后安装它。
JComboBox combo = new JComboBox(); combo.setUI(ColorArrowUI.createUI(combo));