MouseListener和MouseMotionListener以及getX()和getY()方法详解

文章讲述了Java中MouseMotionListener和MouseListener接口用于监听鼠标的移动和点击事件。mouseDragged()方法用于实现组件拖拽,而MouseListener中的五个方法分别对应不同的鼠标操作。此外,文中还强调了在不同组件上调用getX()和getY()会得到相对于该组件左上角的坐标值,这对于理解和处理图形界面交互至关重要。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  • MouseMotionListener鼠标移动监听事件

这里面有一个拖拽的方法mouseDragged() 通过使用组件坐标的方法实现组件的移动。

  • MouseListener鼠标监听事件

这里面有五个方法:

mouseEntered()鼠标进入

mouseExited()鼠标退出

mousePressed()按压鼠标

mouseReleased()鼠标释放

mouseClicked()鼠标点击

如果以上方法不是都需要使用的话可以使用MouseAdapter(适配器),然后只需要从写自己需要的方法就行啦!

  • 关于getX()和getY()

这个方法之前困惑我很久,后来经过我的不断尝试得出一个结论:

我通过一个例子来说明

eg:有一个JFrame的对象中添加了一个JPanel的对象

代码:JFrame f=new JFrame();

JPanel p=new JPanel();

p.setBounds(10,10,100,100);//设置Panel在Frame中的位置和大小

f.add(p);

f.setBounds(0,0,200,200);

使用不同组件会有不同位置,

当在f中调getX()或者getY的时候是按照鼠标在f中距离左上角的位置返回坐标的。

当在p中调getX()或者getY的时候是按照鼠标在p中距离左上角的位置返回坐标的。

ps:第一次发布如有错误请各位及时指正,感激不尽.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Jinlin Li

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值