你所说的这个模型是java1使用的事件模型,java2中已经被淘汰了。
在使用这个模型时不用添加监听器,只需要重载对应的事件处理方法就可以了。利用事件监听器处理事件是java2中的事件处理模型,和你的方法就不一样了。
对于事件模型1,你去掉你有问题的那句话就可以,对于事件模型2,你使用下面的方法:
import java.awt.*;
import java.awt.event.*;public class SL275 extends Frame
{
  public static void main(String[] args)
  {
    SL275 s=new SL275();
  }
  
  public SL275()
  {
    Button mbtn=new Button("MyBtn");
    mbtn.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
System.out.println("Explicit Enabling Event");
}
}); // ???就是这里,这句应该怎么写呢?
    add(mbtn);
    setBounds(100,100,200,200);
    setVisible(true);
  }
}

解决方案 »

  1.   

    你也可以同时使用两种模型:
    import java.awt.*;
    import java.awt.event.*;public class SL275 extends Frame
    {
      public static void main(String[] args)
      {
        SL275 s=new SL275();
      }
      
      public SL275()
      {
        MyBtn mbtn=new MyBtn("MyBtn");
    mbtn.addActionListener(new ActionListener() {
    public void actionPerformed(ActionEvent e) {
    System.out.println("Explicit Enabling Event!");
    }
    }); // ???就是这里,这句应该怎么写呢?
        add(mbtn);
        setBounds(100,100,200,200);
        setVisible(true);
      }
    }
    class MyBtn extends Button
    {
      public MyBtn(String label)
      {
        super(label);
        enableEvents(AWTEvent.ACTION_EVENT_MASK);
      }  public void processActionEvent(ActionEvent ae)    
      {
        super.processActionEvent(ae);
        System.out.println("Explicit Enabling Event");
      }
    }
      

  2.   

    在SL275中事件模型是放在附录中的,只是作为了解内容了,防止你看的程序是java1时代的产品。
      

  3.   

    我用的是纸版的书,电子版的也有,等我找找,有中文word版的,没有仔细看过,pdf格式的也是2001年5月的,第一版要找找看。
      

  4.   

    呵呵,不是买的,是公司发的。刚进公司时java培训用的就是sl275和sl285的教材。