下面是一个GUI,帮我看下什么错误啊~~总是提示ADD方法有错误!!!怎么回事啊~谢谢import javax.swing.*;
import java.awt.*;public class my extends JFrame{
           JMenuItem kr1=new JMenuItem("open");
           JMenuItem kr2=new JMenuItem("new"); 
     JMenuItem kr3=new JMenuItem("save"); 
           JMenuItem kr4=new JMenuItem("save_as"); 
   JMenuItem kr5=new JMenuItem("exit");  
           Jmenu j1=new Jmenu("file"); 
           j1.add(kr1);
           j1.add(kr2);
           m1.addSeparator();
           j1.add(kr3);
           j1.add(kr4);
           j1.add(kr5);
           JmenuBar p1=new JmenuBar();
          p1.add(j1); 
          pane.setJmenubar(p1);
           JMenuItem kr6=new JMenuItem("edit"); 
     JMenuItem kr7=new JMenuItem("copy"); 
           JMenuItem kr8=new JMenuItem("pick"); 
     JMenuItem kr9=new JMenuItem("cut");
           JMenuItem kr0=new JMenuItem("fullchoice");
          Jmenu j2=new Jmenu("edit"); 
          j2.add(kr6);
          j2.add(kr7);
    m2.addSeparator();
          j2.add(kr8);
          j2.add(kr9);
          j2.add(kr0);
          JmenuBar p2=new JmenuBar();
          p2.add(j1); 
         pane.setJmenubar(p2);      
          Jmenu j3=new Jmenu("figner"); 
          JMenuItem kr11=new JMenuItem("partchoice"); 
          JMenuItem kr12=new JMenuItem("figer");
  JMenuItem kr13=new JMenuItem("protery"); 
  JMenuItem kr14=new JMenuItem("font");
           MenuItem kr15=new JMenuItem("bak"); 
          j3.add(kr11);
          j3.add(kr12);
  m3.addSeparator();
          j3.add(kr13);
          j3.add(kr14);
          j3.add(kr15);
          JmenuBar p3=new JmenuBar();
          p1.add(j3); 
          pane.setJmenubar(p3);  
         JMenuItem kr16=new JMenuItem("first"); 
           JMenuItem kr17=new JMenuItem("color"); 
     JMenuItem kr18=new JMenuItem("u.t");
           JMenuItem kr19=new JMenuItem("p.t");
     JMenuItem kr10=new JMenuItem("page.t"); 
           JMenuItem kr111=new JMenuItem("self.t");     
          Jmenu j4=new Jmenu("tool"); 
          j4.add(kr16);
          j4.add(kr17);
          m4.addSeparator();
           j4.add(kr18);
            j4.add(kr19);
            j4.add(kr10);
            j4.add(kr111);
          JmenuBar p4=new JmenuBar();
          p1.add(j4); 
          pane.setJmenuBar(p4);
          Jpanel t1 =new Jpanel();
          JButton b1=new JButton("back");
          JButton b2=new JButton("serach");
          JButton b3=new JButton("adjust");
          JButton b4=new JButton("file");
          JButton b5=new JButton("cut");
          JButton b6=new JButton("copy");
          JButton b7=new JButton("lead");  
          JButton b8=new JButton("make");
          JComboBox t2=new JComboBox();
          FlowLayout flo=new FlowLayout();
          t2.addItem("size");
          t2.addItem("lay");
          t2.addItem("page");   
          Jpanel t3=new Jpanel();
          JtextArea t5=new JtextArea(8,20);
          t5.setLineWrap(true); 
          t5.setWrapStyLeWord(true);
          JScrollpane scrool=new JScrollpane(t3,JScrollpane.VERTICAL_SCROLLBAR_ALWAYS,JScrollpane.HORIZONTAL_SCROOLBAR_NEVER);
      my()
                 {
                  super("my_first_win");
                  setSize(200,500);
                  setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
                  Container pane=new getContentpane();
                  GridLayout r1=new GridLayout();
                  Pane.setLayout(row1);
                  BorderLayout row1=new BorderLayout();                            
                  row1.add(b1);
                  row1.add(b2);
                  row1.add(b3);
                  row1.add(b4);
                  row1.add(b5);
                  row1.add(b6);
                  row1.add(b7);
                  row1.add(b8);
                  b8.add(t2);
  t1.setLayout(r1);
                  Pane.setLayout(flo);
                  pane.add(t2);
                  Pane.setLayout(t3);  
                  Pane.add(t1);   
                  BorderLayout t6=new BorderLaypout(10,10,10,10);
                  p1.add(t6);
                  p2.add(t6);
                  p3.add(t6);
                  p4.add(t6);
                  Pane.setLayout(p1);  
                  pane.setLayout(p2);  
                 pane.setLayout(p3);  
                  pane.setLayout(p4);  
                  FlowLayout t9=new FlowLayout();
    t3.setLayout(t9);
                  t3.add(t5);
                  t3.add(scroll);
                  pane.add(t3);
                       
                   /*public Insets getInsets()
   {
Insets border=new Insets(10,10,10,10);
   return border; }*/
                  setContentPane(pane);
  setVisible(true);      
               }
public static  void main(String [] args)
                {
my win=new my();
                }    
            
                    
                  
                  
}
     
          
}

解决方案 »

  1.   

    你可以在类下面去声明变量,但是不能对变量进行其它方法设置,放到构造里去吧public class My extends JFrame{
        JMenuItem kr1=new JMenuItem("open");
        JMenuItem kr2=new JMenuItem("new");
        //.....这些是可以的    public My(){
            j1.add(kr1); // 放在这里就没问题了
            j1.add(kr2);
            // ......
        }}
      

  2.   

    p1,p2,p3,p4是什么???JMenuBar..............
      

  3.   

    是这样吗?再指点下!!
    import javax.swing.*;
    import java.awt.*;public class my extends JFrame{
               JMenuItem kr1=new JMenuItem("open");
               JMenuItem kr2=new JMenuItem("new"); 
         JMenuItem kr3=new JMenuItem("save"); 
               JMenuItem kr4=new JMenuItem("save_as"); 
       JMenuItem kr5=new JMenuItem("exit");  
               Jmenu j1=new Jmenu("file"); 
               JmenuBar p1=new JmenuBar();
               
               pane.setJmenubar(p1);
               JMenuItem kr6=new JMenuItem("edit"); 
         JMenuItem kr7=new JMenuItem("copy"); 
               JMenuItem kr8=new JMenuItem("pick"); 
         JMenuItem kr9=new JMenuItem("cut");
               JMenuItem kr0=new JMenuItem("fullchoice");
              Jmenu j2=new Jmenu("edit"); 
              
              JmenuBar p2=new JmenuBar();
               
             pane.setJmenubar(p2);      
              Jmenu j3=new Jmenu("figner"); 
              JMenuItem kr11=new JMenuItem("partchoice"); 
              JMenuItem kr12=new JMenuItem("figer");
      JMenuItem kr13=new JMenuItem("protery"); 
      JMenuItem kr14=new JMenuItem("font");
               MenuItem kr15=new JMenuItem("bak");          
              JmenuBar p3=new JmenuBar();    
              pane.setJmenubar(p3);  
             JMenuItem kr16=new JMenuItem("first");             
              Jmenu j4=new Jmenu("tool");           
              JmenuBar p4=new JmenuBar();         
              pane.setJmenuBar(p4);
              Jpanel t1 =new Jpanel();
              JButton b1=new JButton("back");
              JButton b2=new JButton("serach");
              JButton b3=new JButton("adjust");
              JButton b4=new JButton("file");
              JButton b5=new JButton("cut");
              JButton b6=new JButton("copy");
              JButton b7=new JButton("lead");  
              JButton b8=new JButton("make");
              JComboBox t2=new JComboBox();
              FlowLayout flo=new FlowLayout();
              t2.addItem("size");
              t2.addItem("lay");
              t2.addItem("page");   
              Jpanel t3=new Jpanel();
              JtextArea t5=new JtextArea(8,20);
              t5.setLineWrap(true); 
              t5.setWrapStyLeWord(true);
              JScrollpane scrool=new JScrollpane(t3,JScrollpane.VERTICAL_SCROLLBAR_ALWAYS,JScrollpane.HORIZONTAL_SCROOLBAR_NEVER);
          my()
                     {
                      super("my_first_win");
                      setSize(200,500);
                      setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
                      Container pane=new getContentpane();
                      GridLayout r1=new GridLayout();
                      Pane.setLayout(row1);
                      BorderLayout row1=new BorderLayout(); 
                      j1.add(kr1);
                      j1.add(kr2);
                      m1.addSeparator();
                     j1.add(kr3);
                     j1.add(kr4);
                     p1.add(j1);
                     j1.add(kr5);  
                     j2.add(kr6);
                     j2.add(kr7);
               m2.addSeparator();
               j2.add(kr8);
               j2.add(kr9);
                j2.add(kr0);
                     p2.add(j1);   
                     j3.add(kr11);
               j3.add(kr12);
       m3.addSeparator();
               j3.add(kr13);
               j3.add(kr14);
                j3.add(kr15);  
                    p1.add(j3); 
                    j4.add(kr16);
                    j4.add(kr17);
               m4.addSeparator();
                j4.add(kr18);
                 j4.add(kr19);
                 j4.add(kr10);
              j4.add(kr111);
                    p1.add(j4);                     
                      row1.add(b1);
                      row1.add(b2);
                      row1.add(b3);
                      row1.add(b4);
                      row1.add(b5);
                      row1.add(b6);
                      row1.add(b7);
                      row1.add(b8);
                      b8.add(t2);
      t1.setLayout(r1);
                      Pane.setLayout(flo);
                      pane.add(t2);
                      Pane.setLayout(t3);  
                      Pane.add(t1);   
                      BorderLayout t6=new BorderLaypout(10,10,10,10);
                      p1.add(t6);
                      p2.add(t6);
                      p3.add(t6);
                      p4.add(t6);
                      Pane.setLayout(p1);  
                      pane.setLayout(p2);  
                     pane.setLayout(p3);  
                      pane.setLayout(p4);  
                      FlowLayout t9=new FlowLayout();
        t3.setLayout(t9);
                      t3.add(t5);
                      t3.add(scroll);
                      pane.add(t3);
                           
                       /*public Insets getInsets()
       {
    Insets border=new Insets(10,10,10,10);
       return border; }*/
                      setContentPane(pane);
      setVisible(true);      
                   }
    public static  void main(String [] args)
                    {
    my win=new my();
                    }    
                
                        
                      
                      
    }
         
              
    }
      

  4.   

    什么意思 具体点好吗  ?JMENUBAR 是容器啊 有什么错误啊 ~~~大哥说清楚点 好吗