你如何让一些东西移动到之前的鼠标按压位置?

时间:2015-12-13 06:01:42

标签: processing

这是非常基本的,但是例如,我绘制一个矩形并按某处(x,y),没有任何反应,但当我再次按下其他地方(x2,y2)时,该矩形将移动到我按下的第一个位置(x ,y)。因此,无论何时按下,矩形都将移动到我按下的最后一个位置。

我有它,所以只要我按下而不是之前的位置就会出现。

void setup(){
  background(234);
  size(400, 400);
}

void draw(){
}

void mousePressed(){
  background(234);
  rect(mouseX, mouseY, 20, 20);
}

1 个答案:

答案 0 :(得分:0)

您需要做的就是创建自己的变量,将先前单击的位置存储在其中,然后使用它来绘制矩形。

float targetX;
float targetY;

void setup(){
  background(234);
  size(400, 400);
}

void draw(){
}

void mousePressed(){
  background(234);
  rect(targetX, targetY, 20, 20);
  targetX = mouseX;
  targetY = mouseY;
}

请注意,您必须在第一次点击时决定您希望它们是什么,因为您还没有先前点击过的位置。默认值为左上角的0, 0