无法将 JCheckBoxMenuItem 添加到 Menu
JCheckBoxMenuItem cannot be added to Menu
JCheckBoxMenuItem 的 src 代码具有以下 class 头部:
public class CheckboxMenuItem extends MenuItem implements ItemSelectable, Accessible
所以当一个 class 扩展另一个时,这意味着它也应该继承它的类型。或不?
我的问题是我无法将 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);
}
The method add(JMenuItem) in the type JMenu is not applicable for the
arguments (CheckboxMenuItem)
我很确定我以前用过这个并且没有问题。但是自从我开始使用 Marven 后,我有时会出现奇怪的行为(其他示例:@Override 不再适用于实现接口的方法)
有人有同样的问题或解决方案吗?
正如 VGR 在他的评论中解释的那样:错误是试图添加 CheckboxMenuItem 而不是 JCheckBoxMenuItem。
JCheckBoxMenuItem 的 src 代码具有以下 class 头部:
public class CheckboxMenuItem extends MenuItem implements ItemSelectable, Accessible
所以当一个 class 扩展另一个时,这意味着它也应该继承它的类型。或不?
我的问题是我无法将 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);
}
The method add(JMenuItem) in the type JMenu is not applicable for the arguments (CheckboxMenuItem)
我很确定我以前用过这个并且没有问题。但是自从我开始使用 Marven 后,我有时会出现奇怪的行为(其他示例:@Override 不再适用于实现接口的方法)
有人有同样的问题或解决方案吗?
正如 VGR 在他的评论中解释的那样:错误是试图添加 CheckboxMenuItem 而不是 JCheckBoxMenuItem。