我正在尝试做到这一点,所以当我按下空格键时,该框会变成黑色。然后,当我再次单击它时,它又变回白色。等等。此刻,当我按空格键时,该框只是闪烁而不会停止。这是我的代码:
boolean x = false;
void setup() {
size(500, 500);
surface.setResizable(true);
rect(50, 50, 400, 400);
}
void draw() {
background(#FFFFFF);
if (key == ' ') {
if(x == false){
x = true;
}else {
x = false;
}
}
if(x == false){
fill(#FFFFFF);
rect(50, 50, 400, 400);
}else{
fill(#000000);
rect(50, 50, 400, 400);
}
}
要在处理中处理事件,您需要使用事件处理程序回调。 (例如https://processing.org/reference/keyPressed_.html)。每次调用if (key == ' ')
函数时,您的代码都会运行draw()
块。相反,每按一次键,keyPressed
方法仅运行一次。它仍然需要一个if块来找出那是哪个键。