If statement 处理:一个简单的按钮

If statement 处理:一个简单的按钮,if-statement,processing,If Statement,Processing,我已经完成了这项任务的大部分,但让我恼火的是,一旦点击这个按钮,它不仅必须变成绿色,而且必须保持绿色。我让它变成绿色,但保持绿色我就是想不出来。我觉得我什么都试过了。我使用了一个计数器,每次点击鼠标时计数器上升一个,然后我做了一个小循环,当计数器大于0时开始,并将绿色矩形放置在按钮上。我试过用鼠标滑动的方法。我在这儿把头发扯下来 void setup(){ 尺寸(600400); 背景(250); } 作废提款(){ //如果按下鼠标,则变为绿色 //检查光标是否位于按钮内部,单击时将其变为绿色

我已经完成了这项任务的大部分,但让我恼火的是,一旦点击这个按钮,它不仅必须变成绿色,而且必须保持绿色。我让它变成绿色,但保持绿色我就是想不出来。我觉得我什么都试过了。我使用了一个计数器,每次点击鼠标时计数器上升一个,然后我做了一个小循环,当计数器大于0时开始,并将绿色矩形放置在按钮上。我试过用鼠标滑动的方法。我在这儿把头发扯下来

void setup(){
尺寸(600400);
背景(250);
}
作废提款(){
//如果按下鼠标,则变为绿色
//检查光标是否位于按钮内部,单击时将其变为绿色

如果(mouseX>250&&mouseY>150&&mouseX150&&mouseX对您的代码进行最小调整,这是一种解决方案,您可以使用布尔值来标记按钮是否已被单击,问题是
mousePressed
保持鼠标按钮的状态为,因此一旦释放它,var将保持为false,因此要切换的标记为:

错误的工作示例代码

boolean clicked=false;
无效设置(){
大小(600400);
背景(250);
}
作废提款(){
//如果按下鼠标,则变为绿色
//检查光标是否位于按钮内部,单击时将其变为绿色
如果(mouseX>250&&mouseY>150&&mouseX150&&mouseX