jPopUpMenu更改翻转背景

问题描述 投票:0回答:2

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

<< img src =“ https://image.soinside.com/eyJ1cmwiOiAiaHR0cHM6Ly9pLnN0YWNrLmltZ3VyLmNvbS9zMDdqdC5qcGcifQ==” alt =“在此处输入图像描述”>

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

java colors background jpopupmenu jmenuitem
2个回答
3
投票

您可以使用类似:

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

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

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


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);
© www.soinside.com 2019 - 2024. All rights reserved.