2016-03-08 162 views
0

好吧,所以基本上当用户按下一个框的值是假设只减少一次,但它不断这样做。下面是我的代码片段:处理mousePressed()问题

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

所以,如果他们点击框平衡5,将不断下降的时候,我只希望它发生一次。我该如何阻止?

回答

0

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

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

boolean alreadyPressed = false; 

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

void draw() { 
    background(0); 
} 
+0

哦完美谢谢! – Anonymous