gpt4 book ai didi

c# - 有没有办法在 Windows 窗体中延迟事件处理程序(比如 1 秒)

转载 作者:可可西里 更新时间:2023-11-01 08:03:06 26 4
gpt4 key购买 nike

我需要能够延迟某些控件(如按钮)的事件处理程序,例如在实际事件发生 1 秒后(例如单击事件).. .net 框架可以做到这一点吗?

我使用计时器并从计时器的滴答事件中调用我的代码,如下所示,但我不确定这是否是最佳方法!

void onButtonClick( ..)
{
timer1.Enabled = true;
}

void onTimerTick( ..)
{
timer.Enabled = false;

CallMyCodeNow();
}

最佳答案

也许您可以创建一个创建计时器的方法?

void onButtonClick(object sender, EventArgs e)
{
Delay(1000, (o,a) => MessageBox.Show("Test"));
}

static void Delay(int ms, EventHandler action)
{
var tmp = new Timer {Interval = ms};
tmp.Tick += new EventHandler((o, e) => tmp.Enabled = false);
tmp.Tick += action;
tmp.Enabled = true;
}

关于c# - 有没有办法在 Windows 窗体中延迟事件处理程序(比如 1 秒),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/648700/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com