作者ericsoneva (嗯~)
看板java
标题[问题] 设计移动多个图案
时间Thu May 6 18:26:03 2010
想要设计目前frame上有一些图案
我可以点选frame的任何其中一个图案移来移去(有点类似拼图)
目前做法是利用
public void mousePressed(MouseEvent e) {
dx=e.getX()-posX; // 取得滑鼠按下之点与基准点x方向的距离
dy=e.getY()-posY;
}
public void mouseDragged(MouseEvent e) {
x=e.getX()-dx; // 取得拖曳时的基准点x座标
y=e.getY()-dy; // 取得拖曳时的基准点y座标
if(dx>0 && dx<100 && dy>0 && dy<120) // 如果指标落在正方形区域内
{
ttt1.setLocation(x,y);
Graphics g = getGraphics();
update(g);
posX =x;
posY =y;
}
}
滑鼠点下去後算基准点与滑鼠点的距离是否有落在图案上
判断为是点哪一张图
但是这种方法常常会误判 且图一多整个会乱掉
而且图如果重叠会被一起拉到
if(dx>0 && dx<100 && dy>0 && dy<120) // 如果指标落在正方形区域内
且会因为图的大小而要更改区域的大小
不知道有没有好的方法可以用滑鼠去点选我想要移动的物件
谢谢
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.114.71.17