我正在建立一个下拉菜单,它位于程序菜单栏中,如果点击JButton,弹出一个JPopupMenu。在JPopupMenu中有多个JMenuItems。JMenuItem显示左侧的复选框,如何禁用它?
但是,除了每个JMenuItem,它都显示一个复选框!它看起来像这样:
我不认为它应该,并有明确的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。并且它注入 LAF弹出式菜单 只要它加载。
所以解决方案太设置为不要加载菜单样式。
LookAndFeelFactory.installJideExtension(
LookAndFeelFactory.VSNET_STYLE_WITHOUT_MENU);
也许图标来自你的外观和感觉?...你的外观和感觉是什么? – Istao 2010-09-07 08:11:16
复选框有效吗?如果我不希望这个功能,我可能会把它放在一个'ActionListener'中。你提到的四件中有任何可疑的东西? – trashgod 2010-09-07 14:48:29
张贴您的SSCCE(http://sscce.org)来证明问题。这将包括尝试早先建议的默认LAF。 – camickr 2010-09-07 14:59:17