java组件及事件处理(11)–ActionListener一个窗口,两个事件
一般文本框,按钮,菜单项,单选按钮会使用ActionListener
加入监听器 分三步 (1) implements ActionListener (2)负责加监听器的 地方 addActionListener(this) (3)新的一个负责监听的方法里面写时间处理程序
下面的例子通过监听器实现— 有两个按钮,点击任意一个按钮可以实现不同的功能,比如点击press me 可以打印press me ,点击don't press me ,可以打印don’t press me,这便是一个窗口,两个事件
import java.awt.Color;
import java.awt.Container;
import java.awt.FlowLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
public class Eleven extends JFrame implements ActionListener//第一步
{
JButton jb1;
JButton jb2;
public Eleven(String s)
{
super(s);
setLayout(new FlowLayout());
setBounds(400, 400, 400, 400);
Container conn = getContentPane();
conn.setBackground(Color.cyan);
jb1 = new JButton('PRESS ME');
jb2 = new JButton('Don't PRESS ME');
jb1.addActionListener(this);//第二步
jb2.addActionListener(this);
add(jb1);
add(jb2);
setVisible(true);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
public void actionPerformed(ActionEvent e)//第三步
{
// TODO Auto-generated method stub
JButton source = (JButton)e.getSource();
if(source==jb1)
{
System.out.println(jb1.getText());
}
else
{
System.out.println(jb2.getText());
}
}
public static void main(String[] args) {
Eleven a = new Eleven('十一');
}
}
|