package cn.itcast_02;
import java.awt.Button;
import java.awt.FlowLayout;
import java.awt.Frame;
import java.awt.GridLayout;
import java.awt.Label;
import java.awt.Panel;
import java.awt.TextField;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
//自监听实现了ActionListener接口
public class EventDemo extends Frame /*implements ActionListener*/ {
Label l1 = new Label("用户名:");
Label l2 = new Label("密 码:");
TextField tfName = new TextField(20);
TextField tfPwd = new TextField(20);
Button btnLogin = new Button("登录");
Button btnExit = new Button("退出");
public EventDemo(){
setTitle("事件处理");
setLocation(200,200);
setLayout(new GridLayout(3,1));
Panel p1 = new Panel();
Panel p2 = new Panel();
Panel p3 = new Panel(new FlowLayout(FlowLayout.RIGHT,10,3));
p1.add(l1);
p1.add(tfName);
p2.add(l2);
p2.add(tfPwd);
p3.add(btnLogin);
p3.add(btnExit);
add(p1);
add(p2);
add(p3);
//匿名类监听
btnLogin.addActionListener(new ActionListener(){
@Override
public void actionPerformed(ActionEvent e) {
System.out.println("登录按钮被点击了");
String useName = tfName.getText();
System.out.println("用户名为:" + useName);
}
});
btnExit.addActionListener(new ActionListener(){
@Override
public void actionPerformed(ActionEvent e) {
dispose();
System.exit(0);
}
});
pack();
setVisible(true);
/*ActionListener lis = new LoginListener();
btnLogin.addActionListener(lis);*/
// ActionListener lis = new LoginListener(this);
// btnLogin.addActionListener(lis);
// btnLogin.addActionListener(this);
// btnExit.addActionListener(this);
}
public static void main(String[] args) {
new EventDemo();
}
//自监听
/*public void actionPerformed(ActionEvent e){
System.out.println(e.getActionCommand());
if(e.getSource()==btnLogin){
System.out.println("登录按钮被点击了");
String useName = tfName.getText();
System.out.println("用户名为:" + useName);
}else if(e.getSource()==btnExit){
this.dispose();
System.exit(0);
}
}*/
//内部类监听
/*class LoginListener implements ActionListener{
@Override
public void actionPerformed(ActionEvent e) {
System.out.println("登录按钮被点击了");
String useName = tfName.getText();
System.out.println("用户名为:" + useName);
}
}*/
}
//外部类监听
/*class LoginListener implements ActionListener{
private EventDemo ed;
public LoginListener(EventDemo ed){
this.ed = ed;
}
@Override
public void actionPerformed(ActionEvent e) {
System.out.println("登录按钮被点击了");
String useName = ed.tfName.getText();
System.out.println("用户名为:" + useName);
}
}*/