当前位置: 技术问答>java相关
又问高手:关于鼠标对图形的点击捕捉!
来源: 互联网 发布时间:2015-08-06
本文导语: 假定我定义了MyLine类,其中有strName属性和draw(Graphics g)方法.在程序中用MyLine生成实例,当调用darw方法时在JPanel上画出相应的图形. 请问:在用户的图形界面上,如何通过鼠标点击画出的线,得出我的MyLine对象的st...
假定我定义了MyLine类,其中有strName属性和draw(Graphics g)方法.在程序中用MyLine生成实例,当调用darw方法时在JPanel上画出相应的图形.
请问:在用户的图形界面上,如何通过鼠标点击画出的线,得出我的MyLine对象的strName属性?
谢谢!
请问:在用户的图形界面上,如何通过鼠标点击画出的线,得出我的MyLine对象的strName属性?
谢谢!
|
贴一点关键代码:
//这个例子中将鼠标响应区定义为一个Rectangle2D区,每一条线对一个这样的区域。
private class MouseHandler extends MouseAdapter
{
public void mousePressed(MouseEvent event)
{
// add a new square if the cursor isn't inside a square
current = find(event.getPoint());//根据鼠标坐标搜寻点击发生在那个图形对象上。
if (current == null)
add(event.getPoint());
}
}
public Rectangle2D find(Point2D p)
{
for (int i = 0; i
//这个例子中将鼠标响应区定义为一个Rectangle2D区,每一条线对一个这样的区域。
private class MouseHandler extends MouseAdapter
{
public void mousePressed(MouseEvent event)
{
// add a new square if the cursor isn't inside a square
current = find(event.getPoint());//根据鼠标坐标搜寻点击发生在那个图形对象上。
if (current == null)
add(event.getPoint());
}
}
public Rectangle2D find(Point2D p)
{
for (int i = 0; i