C#检查按钮是否第二次被点击
我想检查是否用c单击了按钮# 像这样C#检查按钮是否第二次被点击,c#,if-statement,button,click,C#,If Statement,Button,Click,我想检查是否用c单击了按钮# 像这样 private void btnFillo_Click(object sender, EventArgs e) { btnFillo.Text = "text"; // if (btnFillo clicked again) { // do something // } } 您必须在全局变量中保存单击,例如 clicked += 1 其中,单击的变量是全局变量(var clicked=0)。及之后: if(click
private void btnFillo_Click(object sender, EventArgs e)
{
btnFillo.Text = "text";
// if (btnFillo clicked again) {
// do something
// }
}
您必须在全局变量中保存单击,例如
clicked += 1
其中,单击的变量是全局变量(var clicked=0)。及之后:
if(clicked > 1)
或者使用Control.MouseDoubleClick事件:private int clickCounter=0;
私有void btnFillo\u单击(对象发送方,事件参数e){
btnFillo.Text=“Text”;
如果(单击计数器>=1){
//做点什么
单击计数器=0;
}
否则单击计数器+=1;
}
如果只想在第二次单击时执行某些操作,只需使用布尔值:
private bool isClicked=false;
私有void btnFillo\u单击(对象发送方,事件参数e){
btnFillo.Text=“Text”;
如果(已单击){
//做点什么
isClicked=false;
}else isClicked=true;
}
谢谢大家的帮助
我解决我的问题。。。
如果他们需要的话,我会给他们发代码
private int clickCounter = 0;
private void btnFillo_Click(object sender, EventArgs e)
{
if(clickCounter == 0 ) {
// first time click
btnFillo.Text = "text";
clickCounter++;
}
else if (clickCounter == 1)
{
// second time click
btnFillo.Text = "heeeeellll";
clickCounter++;
}
else if (clickCounter == 2)
{
// third time click
btnFillo.Text = "change 2";
clickCounter = 0;
}
else // you can do more if you want more clicks
{
clickCounter += 1;
}
}
你的意思是如果按钮被双击?你是想在双击事件中触发此代码,还是只想在用户第二次单击时执行某些操作?lol@foyss xD时间…@AliReza hahahahaHave查看此链接:谢谢代码,你能解释一下逻辑吗?请注意,逻辑非常简单,但是:在用户单击按钮之前,全局
isClicked
始终为false。当用户第一次单击时,我们将isClicked的值更改为true。所以下一次如果你的条件有效。。。在if条件结束时,当第二次单击完成其工作时,我们再次将isClicked状态重置为false…@GassalamFrans您保留了一个布尔(true或false)变量。第一次单击时,isClicked
为false,因此if(isClicked)
表达式将为false,并且它设置的语句不会运行。然后将isClicked
设置为true
。现在,当用户第二次单击按钮时,if(isClicked)
表达式将为true,语句将运行。@AliReza,蝙蝠侠感谢这两个好的解释。非常感谢。@AliReza感谢您的反馈!声誉低于15的人所投的票将被记录,但不会改变公开显示的帖子分数。