Java JMenu子菜单项未正确显示

Java JMenu子菜单项未正确显示,java,swing,jmenuitem,Java,Swing,Jmenuitem,我正准备将2JRadioButtonMenuItems作为子菜单项添加到JMenuItem,但子菜单项没有正确显示 这是我迄今为止尝试过的代码 private void setupEditMenu() { editMenu = new JMenu("Edit"); // some code.. tabSpaceMenuItem = new JMenuItem("Tab Length"); editMenu.add(tabSpaceMenuItem);

我正准备将2
JRadioButtonMenuItem
s作为子菜单项添加到
JMenuItem
,但子菜单项没有正确显示

这是我迄今为止尝试过的代码

 private void setupEditMenu() {

    editMenu = new JMenu("Edit");

    // some code..

    tabSpaceMenuItem = new JMenuItem("Tab Length");
    editMenu.add(tabSpaceMenuItem);

    ButtonGroup tabSpaceButtonGroup = new ButtonGroup();
    JMenuItem fourSpacedTabMenuItem, eightSpacedTabMenuItem;

    fourSpacedTabMenuItem = new JRadioButtonMenuItem("4 spaces");
    fourSpacedTabMenuItem.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent e) {
            editor.setTabSize(4);
        }
    });
    tabSpaceButtonGroup.add(fourSpacedTabMenuItem);
    tabSpaceMenuItem.add(fourSpacedTabMenuItem);

    eightSpacedTabMenuItem = new JRadioButtonMenuItem("8 spaces");
    eightSpacedTabMenuItem.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent e) {
            editor.setTabSize(8);
        }
    });
    tabSpaceButtonGroup.add(eightSpacedTabMenuItem);
    tabSpaceMenuItem.add(eightSpacedTabMenuItem);

    if(editor.getTabSize() == 4)
        fourSpacedTabMenuItem.setSelected(true);
    if(editor.getTabSize() == 8) {
        eightSpacedTabMenuItem.setSelected(true);
    }
}
电流输出

预期:

Edit
 |-Find
 |-Font
 |-Tab Length
    |- 4 spaces
    |- 8 spaces

我缺少什么?

JMenuItem
不是其他
JMenuItem
的容器。相反,将
tabSpaceMenuItem
改为
JMenu

tabSpaceMenuItem = new JMenu("Tab Length");

JMenuItem
不是其他
JMenuItem
的容器。相反,将
tabSpaceMenuItem
改为
JMenu

tabSpaceMenuItem = new JMenu("Tab Length");

我的错,我想知道我是怎么错过的,顺便说一句,谢谢你的帮助:)欢迎来到森林,小心树木;)我的坏,我想知道我怎么错过了,顺便说一句,谢谢你的帮助:)欢迎来到森林,小心树木;)