jPopUpMenu更改翻转背景

时间:2011-11-30 02:14:01

标签: java colors background jpopupmenu jmenuitem

我想在翻转事件中更改jMenuItems的背景颜色:

enter image description here

现在它是蓝色的,我想要它是白色的,我该怎么办? (我使用netbeans GUI)

非常感谢。

问候。

2 个答案:

答案 0 :(得分:3)

您可以使用以下内容:

UIManager.put("MenuItem.selectionBackground", Color.WHITE);

问题是这会改变所有菜单项的颜色,甚至是那些添加到JMenu的菜单项。

要控制更改哪些菜单项,您需要创建自定义MenuItem UI以替换默认值。然后,您需要修改代码以使用自定义选择背景颜色。

答案 1 :(得分:0)

我希望能够在应用程序的不同部分使用不同的颜色。我没有使用UIManager来更改LookAndFeel,而是扩展了javax.swing.plaf.basic.BasicMenuItemUI:-

public class CustomMenuUI extends BasicMenuItemUI {
    public CustomMenuUI(Color color){
        super.selectionBackground = color;
    }
}

然后,您只需要为JMenuItem设置UI:-

CustomMenuUI menuUI = new CustomMenuUI(Color.WHITE);
jMenuItem.setUI(menuUI);