2013-12-07
Java中如何释放鼠标事件的焦点
1、使用MouseListener接口处理鼠标事件
鼠标事件有5种:按下鼠标键,释放鼠标键,点击鼠标键,鼠标进入和鼠标退出
mousePressed(MouseEvent e) 鼠标按下时调用
mouseReleased(MouseEvent e) 鼠标释放时调用
mouseEntered(MouseEvent e) 鼠标进入容器时调用
mouseExited(MouseEvent e) 鼠标离开容器时调用
mouseClicked(MouseEvent e) 鼠标点击容器时调用
MouseAdapter是用于接收鼠标事件的抽象适配器类,此类中的方法为空。 扩展此类可创建MouseEve...全部
1、使用MouseListener接口处理鼠标事件
鼠标事件有5种:按下鼠标键,释放鼠标键,点击鼠标键,鼠标进入和鼠标退出
mousePressed(MouseEvent e) 鼠标按下时调用
mouseReleased(MouseEvent e) 鼠标释放时调用
mouseEntered(MouseEvent e) 鼠标进入容器时调用
mouseExited(MouseEvent e) 鼠标离开容器时调用
mouseClicked(MouseEvent e) 鼠标点击容器时调用
MouseAdapter是用于接收鼠标事件的抽象适配器类,此类中的方法为空。
扩展此类可创建MouseEvent侦听器并重写所需事件的方法事件。使用扩展的类可以创建侦听器对象,然后使用组件的addMouseListener方法向该组件注册此侦听器对象。当按下、释放或单击(按下后释放)鼠标按键时,或者当鼠标光标进入或离开组件时,则调用侦听器对象中的相关方法,并将MouseEvent传递给该方法。
鼠标事件类型是MouseEvent,主要方法有:
getX(),getY() 获取鼠标位置;
getModifiers() 获取鼠标左键或者右键
getClickCount() 获取鼠标被点击的次数;
getSource() 获取鼠标发生的事件源
获得监视器的方法addMouseListener(),旨在处理鼠标事件的类要么实现此接口(及其包含的所有方法),要么扩展抽象类MouseAdapter(仅重写所需的方法)。
可见,扩展抽象类MouseAdapter比较方便,因为我们只需重写我们需要的方法。
移去监视器的方法removeMouseListener()
例:addMouseListener(new java。
awt。event。MouseAdapter() {//重写所需的方法
public void mouseReleased(java。awt。event。MouseEvent e) {
x=e。
getX();//获取鼠标位置
y=e。getY();
System。out。println("x="+x);//输出
System。out。println("y="+y);
}
});
2、使用MouseMotionListener接口处理鼠标移动事件
事件源发生的鼠标事件有2种:拖动鼠标和鼠标移动;
mouseDragged() 鼠标按键在组件上按下并拖动时调用
mouseMoved() 鼠标按键在组件上移动(无按键按下)时调用
MouseMotionAdapter接收鼠标移动事件的抽象适配器类
鼠标事件的类型是MouseEvent
事件源获得监视器的方法是addMouseMotionListener()
3、控制鼠标的指针形状
setCursor(Cursor。
getPreddfinedCursor(Cursor。鼠标形状定义));
需要加载import java。awt。Cursor;。收起