Java JCombo中的子菜单
JComboBox有一个addPopUpMenu和一个addJMenuItem 我的类扩展了JComboBox。我创建了一个JPopUpMenu,但当我单击JComboBox时,它无法显示。相反,没有显示任何内容。有什么想法吗Java JCombo中的子菜单,java,swing,jcombobox,jpopupmenu,Java,Swing,Jcombobox,Jpopupmenu,JComboBox有一个addPopUpMenu和一个addJMenuItem 我的类扩展了JComboBox。我创建了一个JPopUpMenu,但当我单击JComboBox时,它无法显示。相反,没有显示任何内容。有什么想法吗 JPopupMenu Pmenu = new JPopupMenu(); JMenu textAndDataMenu = new JMenu("Text and Data"); HashMap textAndData = new HashMa
JPopupMenu Pmenu = new JPopupMenu();
JMenu textAndDataMenu = new JMenu("Text and Data");
HashMap textAndData = new HashMap();
public ComboMenu()
{
super();
setUpTextAndData();
add(Pmenu); //----------this is where I add the menu
}
public void setUpTextAndData()
{
textAndData.put("Basic Text Box", TextBox.class);
textAndData.put("Clear Text Box", ClearTextBox.class);
textAndData.put("Table", Table.class);
textAndData.put("Interactive Table", InteractiveTable.class);
textAndData.put("Graph", Graph.class);
Set textAndDataKeys = textAndData.keySet();
JMenuItem newMenuItem;
for(String currKey : textAndDataKeys)
{
newMenuItem = new JMenuItem(currKey);
newMenuItem.addActionListener(this);
textAndDataMenu.add(newMenuItem);
}
Pmenu.add(textAndDataMenu);
}
编辑:无需担心。。。你知道吗,我已经有一段时间没搞砸了
我认为你需要做的就是:
Pmenu.setInvoker(this);
在将其添加到构造函数中之前。我将这些项添加到JMenus,然后再将它们添加到弹出菜单中,这样JMenus将成为子菜单。我试图实现的是一个JComboBox,当您单击它时,您可以访问嵌套项。你知道如何做到这一点吗?看我的编辑,我想我看错了。