0

所以我正在为 PS3 制作一个工具,但是我需要帮助让按钮在再次单击时执行另一个操作,这就是我所拥有的,但我遇到了错误,谢谢。

private void metroButton2_Click(object sender, EventArgs e)
    {
        byte[] On = new byte[] { 0x00 };
        PS3.SetMemory(0x007EDCA4, On);
    }
    else
    {
        byte[] On = new byte[] { 0x65 };
        PS3.SetMemory(0x007EDCA4, Off);
    }
4

1 回答 1

4

我知道您要做什么,但是您不能那样使用 else 语句。else 关键字只能在“if”语句之后使用。您需要的是某种标志(一个布尔变量),您可以在 true 和 false 之间切换以交换 button_click 事件的执行。

bool metroBtnFlag = true;
private void metroButton2_Click(object sender, EventArgs e)
{
   if (metroBtnFlag)
   {
       metroBtnFlag = false;
       //First, third, fifth, etc... click events
   }
   else
   {
      metroBtnFlag = true;
      //Second, fourth, sixth, etc... click events
   }
}

或者,如果您只希望按钮第一次执行某些操作,然后每隔一次执行不同的操作,只需删除其中一个标志分配。这样,当它设置为 false 时,它​​将永远不会再次执行第一个代码块。

于 2017-05-27T21:10:31.963 回答