1、了解什么是事件监听
写好一个界面后,我们就会对界面进行一些操作。比如,在输入框中输入数据,点击按钮或者菜单。这些操作我们称之为一个事件。
就比如我们要监视一间房子中会发生什么事情,就会给这间房子装上一个摄像头。对于事件的处理在Java中有类似的机制。我们要监视一个按钮有没有被点击,就要给按钮装上一个类似监听器的东西。这个东西我们就叫做事件监听机制。
而监听按钮有没有被点击的这种机制就是事件监听机制。
在Java中,每个事件都对应有一个事件监听器。它们被定义在Java.awt.event这个包中。
练习:实现绘制直线、矩形、圆、圆角矩形、弧线、文字、图片、填充矩形、填充3D矩形、任意多边形。图片要使用ImageIcon getImage()
分析:
界面的实现
DrawMain.java
main()
initUI(){
实例化窗体对象,设置窗体的属性值
}
功能的实现
在窗体上按下鼠标按键,然后释放鼠标按键,在按下和释放的亮点之间绘制一个图形。
事件监听机制
事件源对象:窗体对象
事件监听方法:addMouseListener(MouseListener l);鼠标事件监听方法
事件接口(事件处理类):MouseListener
1、定义一个主类,创建一个主类新对象。
publicclassDrawmain{
public static void main(String[] args) {
Drawmain dm = new Drawmain();
dm.initUI();
}
2、实现初始化方法
在屏幕上显示出一个窗体,并且设置窗体的大小,背景颜色,窗体可见
public void initUI() {
JFrame frame = new JFrame();
Drawlistener dr = new Drawlistener();
frame.setTitle("画图界面");
frame.setSize(800, 600);
frame.setLocationRelativeTo(null);
frame.setDefaultCloseOperation(3);
3、定义一个事件接口(事件处理类)
a、public class Drawlistener implements MouseListener
{
}
b、打开API文档,重写MouseListener的所有方法(将“;”改为“{}”即为重写)
/**
* Invoked when the mouse button has been clicked (pressed and released) on a component.
*/
public void mouseClicked(MouseEvent e){}
/**
* Invoked when a mouse button has been pressed on a component.
*/
public void mousePressed(MouseEvent e){}
/**
* Invoked when a mouse button has been rel