JCheckBoxMenuItem无法添加到菜单

时间:2018-07-30 19:28:39

标签: java swing jmenu jmenuitem

JCheckBoxMenuItem 的src代码具有以下类头:

public class CheckboxMenuItem extends MenuItem implements ItemSelectable, Accessible

因此,当一个类扩展另一个类时,意味着它也应该继承其类型。或不?

我的问题是我无法将 JCheckBoxMenuItem 添加到 JMenu (需要添加MenuItem)。

以下代码对我不起作用:

private void initMenu()
{
    menuBar = new JMenuBar();
    setJMenuBar(menuBar);

    mnFile = new JMenu("File");
    menuBar.add(mnFile);

    mnAudio = new JMenu("Audio");
    menuBar.add(mnAudio);

    mnitmQuit = new JMenuItem("Quit");
    mnFile.add(mnitmQuit);


    rmnitmNoice = new CheckboxMenuItem("Noice");
    // Eclipse gives error Message below *
    mnAudio.add(rmnitmNoice);

    rmnitmNuke = new JRadioButtonMenuItem("Nuke");
    // Same here
    mnAudio.add(rmnitmNuke);
}
  

类型JMenu的add( JMenuItem )方法不适用于   参数( CheckboxMenuItem

我很确定我以前曾经使用过它,并且没有任何问题。但是,由于我开始使用 Marven ,有时会出现奇怪的行为(其他示例:@Override不适用于Methods,该方法不再实现接口)

有相同问题或解决方案的人吗?

1 个答案:

答案 0 :(得分:0)

如VGR在他的评论中所述:错误是试图添加CheckboxMenuItem而不是JCheckBoxMenuItem。