其他的简单消息错误

ant*_*t c -1 processing syntax-error

我正在制作一个声音板,当你点击一个按钮时播放声音(第一个迷你项目非常令人兴奋),当我尝试else在我的项目中使用一个语句时,我得到一个编译错误.

谁能告诉我我的问题是什么?我很想知道为什么会这样,所以将来不会发生这种情况.

我尝试过使用else if但是我遇到了语法错误,所以我迷失了我应该做的事情.

这是我的代码中有问题的部分:

void mousePressed(){
if (mouseX > 100 && mouseX < 100 + width
&& mouseY > 100 && mouseY < 100+height)
    s2.play();
    image(p2,1,1);
} else{  //here is where i get the error
  s2.pause();
  s2.rewind();
}
Run Code Online (Sandbox Code Playgroud)

Kev*_*man 6

使用适当的缩进来真正看到发生了什么:

void mousePressed(){
   if (mouseX > 100 && mouseX < 100 + width && mouseY > 100 && mouseY < 100+height)
      s2.play();

   image(p2,1,1);
} 
else{
  s2.pause();
  s2.rewind();
}
Run Code Online (Sandbox Code Playgroud)

你的if语句{后面没有一个左大括号,所以它只评估下一行.然后,以下结束花括号将}关闭该mousePressed()函数.在那之后你有你的else,这是没有意义的.这不是有效的语法.这就是你得到错误的原因.

要修复它,您可能只想{if语句后添加一个左大括号:

void mousePressed(){
   if (mouseX > 100 && mouseX < 100 + width && mouseY > 100 && mouseY < 100+height){
      s2.play();
      image(p2,1,1);
   } 
   else{
     s2.pause();
     s2.rewind();
   }
}
Run Code Online (Sandbox Code Playgroud)