Java 如何更改JComboBox颜色?
我想更改所选组合框的颜色。 我不知道这个活动的名称。 它不是背景或前景,那又怎样呢? 有关图像的更多信息:Java 如何更改JComboBox颜色?,java,swing,jcombobox,Java,Swing,Jcombobox,我想更改所选组合框的颜色。 我不知道这个活动的名称。 它不是背景或前景,那又怎样呢? 有关图像的更多信息: 您必须为组合框编写一个新的渲染器。这里有一些很好的例子: 具体来说,您将编写一个新的单元渲染器。这里有一个很好的教程: 我希望这有帮助 Greg渲染器适用于下拉列表中的项目 当索引值为-1时,同样的渲染器也用于渲染组合框中显示的值。但是,背景颜色是由UI控制的,因此您不能只覆盖它。这就是问题所在 UIManager.getColor("ComboBox.selectionBackgroun
您必须为组合框编写一个新的渲染器。这里有一些很好的例子: 具体来说,您将编写一个新的单元渲染器。这里有一个很好的教程: 我希望这有帮助
Greg渲染器适用于下拉列表中的项目 当索引值为-1时,同样的渲染器也用于渲染组合框中显示的值。但是,背景颜色是由UI控制的,因此您不能只覆盖它。这就是问题所在
UIManager.getColor("ComboBox.selectionBackground");
属性用于控制背景,因此具有一致的LAF,指示组合框何时具有焦点。我不知道有什么简单的方法来控制这种行为。您需要编写一个自定义UI,根据所选值设置背景。谢谢您的回答。我有自己的渲染,但我不知道如何继续处理第一行(选定的)。我知道它不起作用,我在回答中说。渲染器的背景色被忽略,并且使用UIManager中的背景,这就是您需要自定义UI的原因。@user3784463如果您使用的是nimbus,则UI键可能不同