import java.awt.*;
import java.awt.event.*;public class ch extends Frame implements ItemListener
{
public static void main(String[] args) {  new ch();
}
    
    Choice size;
Panel p1,p2,p3,p4;
  Label e1,e2,e3,e4,e5,msg;
  TextField text1,text2,text3,text4,text5;    
   /* p1=new Panel();p2=new Panel();p3=new Panel();
    p1.add(e1);*/ch()
{
    public void init()
    {
      size = new Choice();
       e1=new Label("设备维修编号");
       e2=new Label("设备编号");
    
       text2=new TextField(20);
       p1=new Panel();
       p1.add(e1);
        size.add("10");
        size.add("14");
        size.add("18");
        p1.add(size);
        p1.add(e2);
        p1.add(text2);
       setLayout(new FlowLayout());
    add(p1);}        
        size.addItemListener(this);
    {
    public void itemStateChanged(ItemEvent e)
    {
    
        String s;
          if(e.getItemSelectable() instanceof Choice)
        {
            Choice ctemp = (Choice)(e.getItemSelectable());
            s = ctemp.getSelectedItem();
            System.out.println(s);
        }

解决方案 »

  1.   

    这样呢?
    import java.awt.*;
    import java.awt.event.*;public class ch extends Frame implements ItemListener
    {
      public static void main(String[] args) {    new ch();
      }
        
      Choice size;
      Panel p1,p2,p3,p4;
      Label e1,e2;
      TextField text1;    
       
      ch(){
        public void init(){
          size = new Choice();
           e1=new Label("设备维修编号");
           e2=new Label("设备编号");
        
           text2=new TextField(20);
           p1=new Panel();
           p1.add(e1);
           size.add("10");
           size.add("14");
           size.add("18");
           p1.add(size);
           p1.add(e2);
           p1.add(text2);
           setLayout(new FlowLayout());
           add(p1);
         size.addItemListener(this);
         public void itemStateChanged(ItemEvent e){
            String s;
            if(e.getItemSelectable() instanceof Choice){
                Choice ctemp = (Choice)(e.getItemSelectable());
                s = ctemp.getSelectedItem();
                System.out.println(s);
            }
         }   }
     }
    }
      

  2.   

    import java.awt.*;
    import java.awt.event.*;public class ch extends Frame implements ItemListener
    {
      public static void main(String[] args) {    new ch();
      }
        
      Choice size;
      Panel p1,p2,p3,p4;
      Label e1,e2;
      TextField text1,text2;    
       
      ch(){
        public void init()
       {
          size = new Choice();
           e1=new Label("设备维修编号");
           e2=new Label("设备编号");
        
           text2=new TextField(20);
           p1=new Panel();
           p1.add(e1);
           size.add("10");
           size.add("14");
           size.add("18");
           p1.add(size);
           p1.add(e2);
           p1.add(text2);
           setLayout(new FlowLayout());
           add(p1);
         size.addItemListener(this);
        }
         public void itemStateChanged(ItemEvent e){
            String s;
            if(e.getItemSelectable() instanceof Choice){
                Choice ctemp = (Choice)(e.getItemSelectable());
                s = ctemp.getSelectedItem();
                System.out.println(s);
            }
             }
     }
    }
      

  3.   

    这样至少不报错了,但是不知道是不是把你的本意改了。你原先的代码主要是代码规范不太好,括号不对,还有一点,方法里面不能嵌套方法,你的构造方法里还有个init()方法
    import java.awt.*;
    import java.awt.event.*;public class ch extends Frame implements ItemListener
    { Choice size; Panel p1, p2, p3, p4; Label e1, e2; TextField text1; TextField text2; public static void main(String[] args)
    {
    new ch();
    } public ch()
    { size = new Choice();
    e1 = new Label("设备维修编号");
    e2 = new Label("设备编号"); text2 = new TextField(20);
    p1 = new Panel();
    p1.add(e1);
    size.add("10");
    size.add("14");
    size.add("18");
    p1.add(size);
    p1.add(e2);
    p1.add(text2);
    setLayout(new FlowLayout());
    add(p1);
    size.addItemListener(this); } @Override
    public void itemStateChanged(ItemEvent e)
    {
    String s;
    if (e.getItemSelectable() instanceof Choice)
    {
    Choice ctemp = (Choice) (e.getItemSelectable());
    s = ctemp.getSelectedItem();
    System.out.println(s);
    } }
    }
      

  4.   

    谢谢followme_1987!按你的方法,然后在add(p1)后边加了两条语句就可以了!
      

  5.   

    import java.awt.*;
    import java.awt.event.*;public class ch1 extends Frame implements ItemListener
    {    Choice size;    Panel p1, p2, p3, p4;    Label e1, e2;    TextField text1;    TextField text2;    public static void main(String[] args)
        {
            new ch1();
        }    public ch1()
        {
            System.out.println("1");
            size = new Choice();
            e1 = new Label("设备维修编号");
            e2 = new Label("设备编号");        text2 = new TextField(20);
            p1 = new Panel();
            p1.add(e1);
            size.add("10");
            size.add("14");
            size.add("18");
            p1.add(size);
            p1.add(e2);
            p1.add(text2);
            setLayout(new FlowLayout());
            add(p1);
            setSize(800,600);
            setVisible(true);
            size.addItemListener(this);System.out.println("2");
        }    //@Override
        public void itemStateChanged(ItemEvent e)
        {
    System.out.println("3");        
    Choice ctemp;
            String s;
            if (e.getItemSelectable() instanceof Choice)
            {
                ctemp = (Choice) (e.getItemSelectable());
                s = ctemp.getSelectedItem();
                System.out.println(s);
            }    }
    }