解释txt2.addActionListener(this);中的this指向哪个具体对象, if (e.getSource()==txt2)getSouce何解
importjava.applet.*;importjava.awt.*;importjava.awt.event.*;publicclassExample4_2exte...
import java.applet.*;
import java.awt.*;
import java.awt.event.*;
public class Example4_2 extends Applet implements ActionListener
{
TextArea txt1=new TextArea(7,35);
TextField txt2=new TextField(35);
String str="TextArea 可以编辑多行文本。\n"
public void init()
{
txt1.setText(str);
add(txt1);
add(txt2);
txt2.addActionListener(this);
}
public void actionPerformed(ActionEvent e)
{
String s;
if (e.getSource()==txt2)
{
s=txt2.getText();
txt1.append("\n"+s);
}
}
} 展开
import java.awt.*;
import java.awt.event.*;
public class Example4_2 extends Applet implements ActionListener
{
TextArea txt1=new TextArea(7,35);
TextField txt2=new TextField(35);
String str="TextArea 可以编辑多行文本。\n"
public void init()
{
txt1.setText(str);
add(txt1);
add(txt2);
txt2.addActionListener(this);
}
public void actionPerformed(ActionEvent e)
{
String s;
if (e.getSource()==txt2)
{
s=txt2.getText();
txt1.append("\n"+s);
}
}
} 展开
2个回答
展开全部
问题1:这个this指的其实是Example4_2,因为它实现了ActionListener接口,所以这个类同时也是一个动作监听器来的,而具体处理监听事件的回调函数就是这个类内部实现的actionPerformed方法内的代码。
问题2:getSource方法是用来返回一个对象的,当一个组件对象(即文本输入框或者按钮之类的)注册了一个监听器(就是通过addActionListener()方法),这个组件对象触发事件时,会调用它添加的监听器中的actionPerformed方法,同时,在这个actionPerformed方法中,可以通过调用getSource方法来或者到触发这个事件的对象。
问题2:getSource方法是用来返回一个对象的,当一个组件对象(即文本输入框或者按钮之类的)注册了一个监听器(就是通过addActionListener()方法),这个组件对象触发事件时,会调用它添加的监听器中的actionPerformed方法,同时,在这个actionPerformed方法中,可以通过调用getSource方法来或者到触发这个事件的对象。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询