首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >JPopupMenu没有出现吗?

JPopupMenu没有出现吗?
EN

Stack Overflow用户
提问于 2011-05-15 04:53:27
回答 2查看 1.4K关注 0票数 2

我有一个Java小程序,它将由几个弹出菜单组成,用户将不得不与之交互。但是,JPopupMenu在添加时不会显示。下面是我的代码:

代码语言:javascript
复制
public class Parser extends JApplet implements ActionListener {
    private static final long serialVersionUID = 1L;
    JPopupMenu deviceMenu;
    JButton downloadButton;
    Map <String, Object> deviceDict;

    public void init () {
        try {
            SwingUtilities.invokeAndWait(new Runnable() {
                public void run() {
                    createGUI();
                }
            });
        } 
        catch (Exception e) { 
            System.err.println("createGUI didn't successfully complete");
        }
    }
    public void createGUI() {
        try {
            URL url = new URL("[URL]");
            URLConnection conn = url.openConnection();
            BufferedReader in = new BufferedReader(
                                    new InputStreamReader(
                                    conn.getInputStream()));
            String inputLine;
            String xml = "";
            while ((inputLine = in.readLine()) != null) 
                xml = xml + inputLine;
        deviceDict = Plist.fromXml(xml);
        System.out.print(deviceDict);
        } 

        catch (XmlParseException e) {
            e.printStackTrace();
        } 
        catch (IOException e) {
            e.printStackTrace();
        }
        setLayout(new FlowLayout());
        setPreferredSize(new Dimension(480, 360));
        setSize(480, 360);
        Iterator <String> deviceIterator = deviceDict.keySet().iterator();
        deviceMenu = new JPopupMenu("Test");
        while (deviceIterator.hasNext()) {
            JMenuItem item = new JMenuItem(deviceIterator.next());
            deviceMenu.add(item);
        }
        add(deviceMenu);
    }
}

你知道为什么吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-06-03 07:11:16

我不得不使用JComboBox而不是JPopupMenu

票数 0
EN

Stack Overflow用户

发布于 2011-05-15 04:59:08

你希望它什么时候出现?

如果要显示弹出菜单,则需要调用show()

请参阅此examplethe one from oracle site

顺便说一句,从你的问题看,似乎是JDialog

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6004720

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档