0

JComboBox一个add(PopUpMenu)和一个add(JMenuItem)

我的课程扩展了 JComboBox。我创建了一个 JPopUpMenu,但是当我单击 JComboBox 时它无法显示。相反,什么也不显示。有任何想法吗?



    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);
    }

4

1 回答 1

0

编辑:没关系......你知道,我有一段时间没有搞砸这些了。

我认为您需要做的就是:

Pmenu.setInvoker(this);

在将其添加到您的构造函数之前。

于 2011-03-15T18:41:37.830 回答