【发布时间】:2010-12-29 20:21:25
【问题描述】:
不可编辑的 JComboBox 中选中项的背景颜色是一种蓝色:
我知道您可以将其更改为其他颜色,例如白色,例如使用following code:
jComboBox1.setRenderer(new DefaultListCellRenderer() {
@Override
public void paint(Graphics g) {
setBackground(Color.WHITE);
setForeground(Color.BLACK);
super.paint(g);
}
});
这给了你这样的东西:
但是,如果您双击该组合框,其中一些会变为灰色(带有三角形和边框的部分):
有没有办法阻止这些部分在双击时变灰?
请注意,如果你先调用 super.paint(),整个事情都会变暗(包括“Select...”后面的部分),所以这无济于事。
【问题讨论】:
-
如果先调用 super.paint() 会发生什么?
-
没有帮助。实际上使情况变得更糟。请参阅我对问题的编辑。
-
SSCCE (sscce.org) 比图片更好。无论您单击还是双击组合框,我都没有看到任何区别。箭头永远不会是清晰的白色背景,也永远不会变成深灰色背景。双击对我来说就是打开和关闭下拉菜单。我不知道为什么您的测试代码与我的不同,所以我无法提供任何建议。