一、JAVA事件 在Java开发中,对于事件的处理非常重要,比如响应键盘的输入、鼠标的点击、窗口的移动等等都要涉及到Java事件的应用。 Java事件由事件类和监听接口组成,自定义一个事件前,必须提供一个事件的监听接口以及一个事件类JAVA。比如,如果你定义了一个按钮,当你点击这个按钮时,则会画一个圆,那么画圆这个事件就需要一个事件监听器来实现。许多事件监听接口系统都给定义好了,当我们用的时候直接调用就好。
二、什么是JAVA事件监听器 Java事件监听器即一组动作接口。 如ActionListener 继承的接口就是EventListener以实现方法:
public interface ActionListener extends EventListener {
/** * Invoked when an action occurs. */
public void actionPerformed(ActionEvent e);
}
三、监听器的实用 让DRAW按钮实现画圆功能
package Sample0327;
import java.awt.Color;
import java.awt.FlowLayout;
import java.awt.Graphics;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
public class Border extends JFrame {
private Color color=Color.cyan;
private String str="Color";
/**
* @param args
*/
public static void main(String[] args) {
Border bd=new Border();
bd.initUI();
}
public void initUI(){
this.setSize(800, 800);
this.setDefaultCloseOperation(3);
this.setBackground(Color.black);
this.setVisible(true);
FlowLayout fl = new FlowLayout();
this.setLayout(fl);
JButton jb=new JButton("Draw");
this.add(jb);
//获得画布
Graphics g=this.getGraphics();
//将Point传入
Point p=new Point(g);
//添加监听器
this.addMouseListener(p);
}
}
Point类
package Sample0327;
import java.awt.Graphics;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
public class Point implements MouseListener{
private int x1,x2,y1,y2,x3,y3;
//用构造函数将g传入
private Graphics g;
public Point(Graphics g){
this.g=g;
}
@Override
public void mousePressed(MouseEvent e) {
x1=e.getX()/2;
y1=e.getY()/2;
}
@Override
public void mouseReleased(MouseEvent e) {
g.drawOval(x1,y1,300,300);}
@Override
public void mouseEntered(MouseEvent e) {
// TODO Auto-generated method stub
}
@Override
public void mouseExited(MouseEvent e) {
// TODO Auto-generated method stub
}
public void mouseClicked(MouseEvent e) {
}
}