在使用C#的按钮控件的时候,经常我们想如果出现了多次点击的时候只让其在执行的时候只响应一次。这个时候很多人可能会想到使用Enable=false, 但是实际情况是还是会被多次触发,因为C#采用的是消息队列机制,这个时候我们只需要在Enable = true 之前加一句 Application.DoEvents();就能达到防止重复点击的问题。
private void btnGenerateShape_Click(object sender, EventArgs e)
{
btnGenerateShape.Enabled = false;
……
Thread.Sleep(1000);
Application.DoEvents();
btnGenerateShape.Enabled = true
}
版权声明:本文为u013489804原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。