gpt4 book ai didi

java - JMenuItem 在左侧显示复选框,如何禁用它?

转载 作者:行者123 更新时间:2023-12-01 16:01:52 27 4
gpt4 key购买 nike

我正在构建一个下拉菜单,该菜单位于程序菜单栏中,如果单击 JButton,则会弹出 JPopupMenu。在 JPopupMenu 中有多个 JMenuItem。

但是,在每个 JMenuItem 旁边,它显示一个复选框!看起来像这样:

alt text

我认为不应该,并且有明确的 JCheckBoxMenuItem 。

有谁知道为什么 JMenuItem 中会出现一个复选框以及如何禁用/删除它?

代码

ImageIcon icon = ViewUtilities.createIcon("resource/gui/mainMenu.png", _buttonLength);
setIcon(icon);

JMenuItem menuItem = new JMenuItem("New Whiteboard");
menuItem.addActionListener(new NewWhiteboardActionListener());
getMenu().add(menuItem);

menuItem = new JMenuItem("Open...");
menuItem.addActionListener(new OpenFileActionListener());
getMenu().add(menuItem);

menuItem = new JMenuItem("Preferences...");
menuItem.addActionListener(new PreferencesActionListener());
getMenu().addSeparator();
getMenu().add(menuItem);

menuItem = new JMenuItem("Exit");
menuItem.addActionListener(new ExitActionListener());
getMenu().addSeparator();
getMenu().add(menuItem);

其中 getMenu() 返回一个 JPopupMenu

谢谢!

干杯,

<小时/>

编辑:我已经修复了它。问题出在 Jide图书馆。我用过用于 TabbedPanel 的自定义 LAF。它为弹出菜单注入(inject) LAF只要有负载。

所以解决方案是将其设置为加载菜单样式。

LookAndFeelFactory.installJideExtension(
LookAndFeelFactory.VSNET_STYLE_WITHOUT_MENU);

最佳答案

@zavie 基于此 jide forum topic解决办法是,使用积德在初始化菜单之前执行以下操作

LookAndFeelFactory.installDefaultLookAndFeel();
LookAndFeelFactory.installJideExtension();

此外,在 Windows 7 上,菜单栏的背景颜色与菜单项的背景颜色略有不同,解决方案是使用 JideMenu 而不是 JMenu。

关于java - JMenuItem 在左侧显示复选框,如何禁用它?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3656387/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com