Clicker计数器增加/减少问题

时间:2018-01-31 16:07:30

标签: c# counter countdown

我最近在我的点击计数器上进行了此操作,目前当点击按钮BR时,它将向BR添加30,向RB添加10。同样,当我点击RB时,它将向RB添加30,向BR添加10。我现在发现的问题是,当我减少金额时,它并没有完全按照我的意愿去做。目前它的工作方式是BR为30,RB为10,如果我右击BR,它将从BR中扣除30,从RB中扣除10,如果它在BR中有10,在RB中有30,我右击RB它从BR​​中扣除10,从RB中扣除30,但如果BR中的数量为40,RB中的数量为40(两个按钮单击一次),我可以右键单击任一按钮,它将减少前30/10但是会减少前一个30/10。然后以30为单位离开,如果反复右击,它将继续下降并保持减少10。

这是一个GIF,显示它很好(左键单击按钮) https://gyazo.com/264cc772ac2ac4d1765c92aab34221c1

这是显示问题的GIF(右键单击按钮) https://gyazo.com/4a4484d1e78f8fa0e4e2c5c3af0a54a1

这是我使用过的:

select regexp_replace(column_name, '[^[:alnum:]]', '')  from tablename;

这是使用的代码:

int BRcount = 0;
int RBcount =0;

我尝试使其工作的方式是可以点击按钮分别增加30 + 10并以相同的方式减少。

(请不要犹豫,提出问题进一步解释,因为我知道它看起来有点令人困惑)

2 个答案:

答案 0 :(得分:2)

您的代码的最后部分似乎缺少一些荣誉:

else if (e.Button == MouseButtons.Right)
{
    if (RBcount >=30 && BRcount >=10)
        RBcount -= 30;               
        BRcount -= 10;
    RBT.Text = RBcount.ToString();
    BRT.Text = BRcount.ToString();
}

读起来应该是

else if (e.Button == MouseButtons.Right)
{
    if (RBcount >=30 && BRcount >=10)
    {
        RBcount -= 30;               
        BRcount -= 10;
    }
    RBT.Text = RBcount.ToString();
    BRT.Text = BRcount.ToString();
}

答案 1 :(得分:0)

您似乎错过了代码中的一些括号。

你写道,

if (RBcount >= 10 && BRcount >= 30)
    RBcount -= 10;
    BRcount -= 30;

如果没有括号,if语句将只执行以下行,而不考虑缩进。所以,它实际上会做,

if (RBcount >= 10 && BRcount >= 30)
    RBcount -= 10;
BRcount -= 30;

我认为你想要,

if (RBcount >= 10 && BRcount >= 30)
{
    RBcount -= 10;
    BRcount -= 30;
}

然后完整的代码变为,

private void BR_MouseDown(object sender, MouseEventArgs e)
{
  if (e.Button == MouseButtons.Left)
  {
    BRcount += 30;
    RBcount += 10;
    BRT.Text = BRcount.ToString();
    RBT.Text = RBcount.ToString();
  }
  else if (e.Button == MouseButtons.Right)
  {
    if (BRcount >= 30)
      BRcount -= 30;
    if (RBcount >= 10 && BRcount >= 30)
    {
      RBcount -= 10;
      BRcount -= 30;
    }
    BRT.Text = BRcount.ToString();
    RBT.Text = RBcount.ToString();
  }
}

private void RB_MouseDown(object sender, MouseEventArgs e)
{
  if (e.Button == MouseButtons.Left)
  {
    RBcount += 30;
    BRcount += 10;
    RBT.Text = RBcount.ToString();
    BRT.Text = BRcount.ToString();
  }
  else if (e.Button == MouseButtons.Right)
  {
    if (RBcount >= 30 && BRcount >= 10)
    {
      RBcount -= 30;
      BRcount -= 10;
    }
    RBT.Text = RBcount.ToString();
    BRT.Text = BRcount.ToString();
  }
}