处理mousePressed()问题

时间:2016-03-08 13:27:34

标签: processing

好的,所以基本上当用户按下一个盒子时,该值假设只减少一次,但它会持续减少。这是我的代码片段:

int balance = 100;
void mousePressed {
     if (mouseX > posX && mouseX < posX + w && mouseY > posY && mouseY < posY 
     + h) {
          balance -= 5;
     }
}

因此,如果他们点击框平衡将持续下降5,当我只希望它发生一次。我该如何阻止它?

1 个答案:

答案 0 :(得分:1)

如果我理解你的问题(这有点困难,因为你没有发布MCVE),我相信你会问如何只允许用户点击一次而不是检测每次点击。

如果是这种情况,那么答案就是使用一个boolean变量来跟踪用户是否已经点击了鼠标。这是我自己的MCVE

boolean alreadyPressed = false;

void mousePressed() {
  if (!alreadyPressed) {
    println("pressed");
    alreadyPressed = true;
  }
}

void draw() {
  background(0);
}