首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2SE开发 >

下面程序增加什么代码后才会有弹出式菜单?该怎么解决

2012-03-14 
下面程序增加什么代码后才会有弹出式菜单?下面程序增加什么代码后才会有弹出式菜单?帮我改一下程序吧!谢谢

下面程序增加什么代码后才会有弹出式菜单?
下面程序增加什么代码后才会有弹出式菜单?
帮我改一下程序吧!谢谢!!!!!
package   ygp;

import   java.applet.*;  
import   java.io.*;
import   java.awt.*;
import   java.awt.event.*;
import   javax.swing.*;
import   com.borland.jbcl.layout.*;

public   class   Frame1   extends   JFrame   {
        JPanel   contentPane;
        JMenuBar   jMenuBar1   =   new   JMenuBar();
        JMenu   jMenu1   =   new   JMenu();
        JMenu   jMenu2   =   new   JMenu();
        JMenuItem   jMenuItem1   =   new   JMenuItem();
        JMenuItem   j1   =   new   JMenuItem();
        JMenuItem   jMenuItem3   =   new   JMenuItem();
        JMenuItem   jMenuItem4   =   new   JMenuItem();
        JTextArea   t1   =   new   JTextArea();
        JScrollPane   tools=new   JScrollPane(t1);
        JMenuBar   jMenuBar2   =   new   JMenuBar();
        GridBagLayout   gridBagLayout1   =   new   GridBagLayout();
        JMenuBar   jMenuBar3   =   new   JMenuBar();
        Button   button1   =   new   Button();  
        public   Frame1()   {
                try   {
                        setDefaultCloseOperation(EXIT_ON_CLOSE);
                        jbInit();
                }   catch   (Exception   exception)   {
                        exception.printStackTrace();
                }
        }

        /**
          *   Component   initialization.
          *
          *   @throws   java.lang.Exception
          */
        private   void   jbInit()   throws   Exception   {
                contentPane   =   (JPanel)   getContentPane();
                contentPane.setLayout(gridBagLayout1);

                this.setJMenuBar(jMenuBar1);
                setSize(new   Dimension(400,   300));
                setTitle( "编辑器 ");
                jMenu1.setText( "文件 ");
                jMenu2.setText( "编辑 ");
                j1.setText( "打开 ");
                j1.addActionListener(new   Frame1_jMenuItem2_actionAdapter(this));
                jMenuItem1.setText( "退出 ");


                jMenuItem1.addActionListener(new   Frame1_jMenuItem1_actionAdapter(this));
                jMenuItem4.setText( "字体 ");
                jMenuItem3.setText( "颜色 ");
                tools.addMouseMotionListener(new   Frame1_tools_mouseMotionAdapter(this));
                tools.setFont(new   java.awt.Font( "宋体 ",   Font.BOLD,   14));
                t1.setFont(new   java.awt.Font( "宋体 ",   Font.PLAIN,   15));
                t1.addMouseListener(new   Frame1_t1_mouseAdapter(this));
                jMenuBar1.add(jMenu1);
                jMenuBar1.add(jMenu2);
                jMenu1.add(j1);
                jMenu1.add(jMenuItem1);
                jMenu2.add(jMenuItem4);
                jMenu2.add(jMenuItem3);
                contentPane.add(tools,   new   GridBagConstraints(0,   0,   1,   1,   1.0,   1.0
                                ,   GridBagConstraints.CENTER,   GridBagConstraints.BOTH,
                                new   Insets(0,   0,   0,   0),   198,   279));
        }

        public   void   jMenuItem1_actionPerformed(ActionEvent   e)   {
        System.exit(0);
        }

        public   void   jMenuItem2_actionPerformed(ActionEvent   e)   {
                t1.setText(null);
                FileDialog   fd=new     FileDialog(this,   "打开文件 ");
                                    fd.setVisible(true);
                String   s1=fd.getDirectory()+fd.getFile();
                try
                {
                    FileReader   tt=new   FileReader(s1);
                    BufferedReader   yy=new   BufferedReader(tt);
                    String   s2=yy.readLine();
                    while(s2!=null)
                    {         t1.setText(t1.getText()+s2+ "\n ");
                                s2=yy.readLine();
                    }


                    tt.close();
                    yy.close();
                }
                catch(IOException   yu)
                                {
                }
        }
}


class   Frame1_t1_mouseAdapter   extends   MouseAdapter   {
        private   Frame1   adaptee;
        Frame1_t1_mouseAdapter(Frame1   adaptee)   {
                this.adaptee   =   adaptee;
        }
}


class   Frame1_tools_mouseMotionAdapter   extends   MouseMotionAdapter   {
        private   Frame1   adaptee;
        Frame1_tools_mouseMotionAdapter(Frame1   adaptee)   {
                this.adaptee   =   adaptee;
        }
}


class   Frame1_jMenuItem2_actionAdapter   implements   ActionListener   {
        private   Frame1   adaptee;
        Frame1_jMenuItem2_actionAdapter(Frame1   adaptee)   {
                this.adaptee   =   adaptee;
        }

        public   void   actionPerformed(ActionEvent   e)   {
                adaptee.jMenuItem2_actionPerformed(e);
        }
}


class   Frame1_jMenuItem1_actionAdapter   implements   ActionListener   {
        private   Frame1   adaptee;
        Frame1_jMenuItem1_actionAdapter(Frame1   adaptee)   {
                this.adaptee   =   adaptee;
        }

        public   void   actionPerformed(ActionEvent   e)   {
                adaptee.jMenuItem1_actionPerformed(e);
        }
}


[解决办法]
帮顶。。。
[解决办法]
用javax.swing.JPopupMenu这个类可以实现
具体怎么用看看api
[解决办法]
JPopupMenu pop=new JPopupMenu( "Popup Menu ");
pop.add( "A ");
pop.add( "B ");

new JFrame.getContentPane().add(pop);
还可以添加事件监听器 来对用户的动作做出反应

热点排行
Bad Request.