请问java中怎么实现鼠标经过事件?

在一个棋盘上,经过一个格点的附近(未点击),能够在这个格点上产生一个预览棋子的效果,我在格点四周想用坐标圈出一个区域,当鼠标所在的坐标位于区域内就产生事件。请问怎么实现呢... 在一个棋盘上,经过一个格点的附近(未点击),能够在这个格点上产生一个预览棋子的效果,我在格点四周想用坐标圈出一个区域,当鼠标所在的坐标位于区域内就产生事件。
请问怎么实现呢,MouseEnter好像没用,必须是经过组件才可以,我这里不想加组件,只是坐标范围。
展开
 我来答
码斯客
2014-03-18 · TA获得超过2224个赞
知道小有建树答主
回答量:993
采纳率:50%
帮助的人:606万
展开全部
在每个格点上加透明组件,组件的大小就是你想圈出一个区域的大小,并给组件加上鼠标经过事件,这样就简单多了。

如果不想在格点上做组件,那就计算出所有格点的圈出区域的坐标,假设每个区域都是正方形的(非圆形),那么每个格点就是有4个坐标集合(x,x+长,y,y+宽)。取窗体鼠标移动事件,获取位置,再遍历所有格点的区域坐标,如果在某个区域范围内,就给此区域预览棋子效果。
kitencx
2014-03-17 · TA获得超过440个赞
知道小有建树答主
回答量:300
采纳率:0%
帮助的人:211万
展开全部
你的棋盘,必然是绘制在一个组件上,那么就给这个组件添加一个MouseMotionListener,实现其中的mouseMoved(MouseEvent e),获取当前鼠标的位置进行重绘
追问
怎么获得当前位置啊.我移动的过程中每一点都要获取么
追答
MouseEvent不是有getX()/getY()么?每次触发的时候,获取x,y,然后通过棋盘网格进行计算,获得最近点,重绘。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式