我被要求将应用程序中JComboBox的颜色更改为非常特殊的非默认颜色方案。
我发现如果我改变了
的值System.UserInterface.Colors.SwingDefaults.ControlShadow
资源图文件的:
<Color ident="ControlShadow" value="#999999"/>
到此:
<Color ident="ControlShadow" value="#FFFFFF"/>
一切看起来都应该如此。
但是,我不想为所有Swing控件更改ControlShadow颜色,因此我需要找到更有针对性的修复。
有没有办法只为JComboBox改变这种颜色?
请注意,我尝试将ComboBox.buttonShadow的值更改为#FFFFFF,但这不起作用。
答案 0 :(得分:1)
我认为您不应该使用资源文件。
查看UIManager Defaults可能的方法。查看“系统颜色”以查看“controlShadow”的默认值。然后,如果您查看组合框,您将看到“ComboBox.buttonShadow”具有相同的值。也许你为你的LAF更改了这个值。否则,您需要创建自定义组合框UI。搜索源代码以查看此值的使用位置,您将知道要更改的内容。