import java.awt.event.*;
import javax.swing.*;
//方法一:实现MouseListener接口
优点:使用方便,可以同时继承其他接口
缺点:对不需要处理的事件方法也要列出来
/*
public class eventHanld implements MouseListener{
JFrame f;
public eventHanld()
{
f=new JFrame();
f.setSize(300,500);
f.show();
f.addMouseListener(this);
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
public static void main(String[] args) {
// TODO Auto-generated method stub
new eventHanld();
}
@Override
public void mouseClicked(MouseEvent arg0) {
// TODO Auto-generated method stub
f.setTitle("点击坐标为 ( "+arg0.getX()+","+arg0.getY()+" )");
}
@Override
public void mouseEntered(MouseEvent arg0) {
// TODO Auto-generated method stub
}
@Override
public void mouseExited(MouseEvent arg0) {
// TODO Auto-generated method stub
}
@Override
public void mousePressed(MouseEvent arg0) {
// TODO Auto-generated method stub
}
@Override
public void mouseReleased(MouseEvent arg0) {
// TODO Auto-generated method stub
}
}
*/
//方法二:继承MouseAdapter类
优点:使用方便,只需对有用的事件方法进行重写即可
缺点:不能再继承其他类(JAVA的单一继承机制)
/*public class eventHanld extends MouseAdapter
{
JFrame f;
public eventHanld()
{
f=new JFrame();
f.setSize(300,150);
f.show();
f.addMouseListener(this);
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
public void mouseClicked(MouseEvent arg0)
{
f.setTitle("点击坐标为 ( "+arg0.getX()+","+arg0.getY()+" )");
}
public static void main(String[] args) {
// TODO Auto-generated method stub
new eventHanld();
}
}
*/
//方法三:使用匿名内部类
优点:无需继承类和接口
public class eventHanld
{
JFrame f;
public eventHanld()
{
f=new JFrame();
f.setSize(300,150);
f.show();
f.addMouseListener(new MouseAdapter()
{public void mouseClicked(MouseEvent arg0)
{
f.setTitle("点击坐标为 ( "+arg0.getX()+","+arg0.getY()+" )");
}});
f.addWindowListener(new WindowAdapter()
{
public void windowClosing(WindowEvent arg0)
{System.exit(0);}
});
}//evenhald
public static void main(String[] args) {
// TODO Auto-generated method stub
new eventHanld();
}
}