这里下面的代码使得并行端口中的特定位为高。如何设置windows窗体中按钮单击的时间间隔。如果我将时间间隔设置为2秒,则计时器应该开始,然后2秒后它应该开始自动停止。
private void button1_Click(object sender, EventArgs e)
{
PortAccess.Output(888,1);
}
请您告诉我任何建议或示例。点击此按钮。点击。
答案 0 :(得分:2)
所以你只想在2秒后清除这个位?这样的事情应该有效:
private void button1_Click(object sender, EventArgs e)
{
// Prevent multiple button clicks
button.Enabled = false;
PortAccess.Output(888, 1);
Timer timer = new Timer { Interval = 2000 };
timer.Tick += HandleTimerTick;
timer.Start();
}
private void HandleTimerTick(object sender, EventArgs e)
{
Timer timer = (Timer) sender;
timer.Stop();
timer.Dispose();
button.Enabled = true;
PortAccess.Output(888, 0);
}
您可能会发现将计时器设置一次更简单,并将其存储为实例变量。然后,您可以附加Tick
事件并在构造上设置间隔,并将其添加到表单的组件中,以便自动处理。那么你的方法就是:
private void button1_Click(object sender, EventArgs e)
{
button.Enabled = false;
PortAccess.Output(888, 1);
timer.Start();
}
private void HandleTimerTick(object sender, EventArgs e)
{
timer.Stop();
button.Enabled = true;
PortAccess.Output(888, 0);
}