JPopupMenu可以add(Component),加入JComboBox,一点击JComboBox的下拉菜单就出现异常。请问是什么原因???谢谢。
如果把JComboBox加到JFrame或JDialog没有问题。

解决方案 »

  1.   

    popupmenu的作用是鼠标右键点击时,出先一个menu的列表框。它可以被加到ContentPane里,但是不常见。一般是定义一个popupmenu,在鼠标事件中响应。JPopupMenu popup;    //...where the GUI is constructed:
        //Create the popup menu.
        popup = new JPopupMenu();
        menuItem = new JMenuItem("A popup menu item");
        menuItem.addActionListener(this);
        popup.add(menuItem);
        menuItem = new JMenuItem("Another popup menu item");
        menuItem.addActionListener(this);
        popup.add(menuItem);
            public void mousePressed(MouseEvent e) {
                maybeShowPopup(e);
            }        public void mouseReleased(MouseEvent e) {
                maybeShowPopup(e);
            }        private void maybeShowPopup(MouseEvent e) {
                if (e.isPopupTrigger()) {
                    popup.show(e.getComponent(),
                               e.getX(), e.getY());
                }
            }代码来自java tutorial。
      

  2.   

    JPopupMenu是弹出菜单,怎么能加在其他组件呢,只不过用show方法显示一下就行了
    然后鼠标触发事件就行了!
      

  3.   

    1.4的Jdk只能add(Action a),add(JMenuItem menuItem) ,add(String s) ,楼主用的是1.5的Jdk?
      

  4.   

    我可能没有表达清楚.我自己做了一个日期控件,像Windows的日期设置的那样.右键弹出。其他组件都正常,但JComboBox就出现异常。
      

  5.   

    你想鼠标右键弹出一个日期控件,JComboBox是月份选择(Windows日期设置一样),但不明白为什么会出现异常,其他组件都没事。JPopupMenu可以add(Component c),PopupMenu才只加入几种。楼上几位朋友没在理解我的意思。
    现在也没人回答,只能自己顶一下罗。