当前位置: 代码迷 >> J2SE >> ActionEvent.getSource()的困惑解决办法
  详细解决方案

ActionEvent.getSource()的困惑解决办法

热度:119   发布时间:2016-04-24 01:48:17.0
ActionEvent.getSource()的困惑
Java code
public class ChangePwdTeacher extends JPanel implements ActionListener{    private JTextField jtf = new JTextField();   // 创建用户名输入框    //创建一组密码框    ……    public void addListener(){        jtf.addActionListener(this);        ……    }    public void actionPerformed(ActionEvent e) {        if(e.getSource() == jtf){            ……        }    }    }

ActionEvent 继承了 java.util.EventObject 的source字段、getSource() 方法。
  自己也有 设置 source 的构造器
  ActionEvent(Object source, int id, String command) 
  ……
但到底是怎样初始化的呢?
就调用:
public void addListener(){
jtf.addActionListener(this);
……
}
??
有点迷糊!

------解决方案--------------------
e.getSource()返回添加事件监听的对象,如你写就是JTextField 对象.
这在一个监听事件监听多个不同类型对象时很有用.
  相关解决方案