【发布时间】:2018-08-29 09:51:40
【问题描述】:
我创建了一个 Java 应用程序来添加/删除并在 JPanel 上显示随机数量的点。可以通过拖放移动点。要撤消最后的操作,我会缓冲这些点。
我的问题:如果一个点将通过“mouseDragged”移动,是否可以在拖动开始时保存第一个鼠标位置?我尝试了以下方法:
public void mouseDragged(MouseEvent e) {
int x = e.getX();
int y = e.getY();
if (!points.isEmpty() && curPointIndex > -1) {
if (move == false) {
pointmove = new Point(x,y);
move = true;
}
}
}
方法mouseReleased将变量move改回false。变量pointmove 应该保存第一个点,但它在鼠标拖动时一直在变化。
谁能描述为什么或我可以做些什么不同的事情?
【问题讨论】:
-
也许你可以使用
mousePressed来存储初始点。
标签: java jpanel mouse-position