C# WinForms:如何使用计时器在结束时运行代码';s间隔,但通过它重置间隔';s倒计时
我正在尝试将日志输出到表单,但我希望在5秒钟的可见性后进行清除。但如果我在这5秒倒计时期间输出另一个日志,我希望将其重置为5秒 即 输出日志(“消息”、“标题”)C# WinForms:如何使用计时器在结束时运行代码';s间隔,但通过它重置间隔';s倒计时,c#,winforms,asynchronous,timer,C#,Winforms,Asynchronous,Timer,我正在尝试将日志输出到表单,但我希望在5秒钟的可见性后进行清除。但如果我在这5秒倒计时期间输出另一个日志,我希望将其重置为5秒 即 输出日志(“消息”、“标题”) 5..4..3..2..1.. ClearLog() 但我可能有这种情况 输出日志(“消息”、“标题”) 5..4.. 输出日志(“消息2”、“标题2”) 5..4..3..2.. 输出日志(“消息3”、“标题3”) 5..4..3..2..1.. ClearLog() 同时所有线程都不会停止当前线程 目前我有以下内容,但这是一个常数
5..4..3..2..1..
ClearLog() 但我可能有这种情况 输出日志(“消息”、“标题”)
5..4..
输出日志(“消息2”、“标题2”)
5..4..3..2..
输出日志(“消息3”、“标题3”)
5..4..3..2..1..
ClearLog() 同时所有线程都不会停止当前线程 目前我有以下内容,但这是一个常数5秒,因此,例如,日志可能只出现0.5秒
Task.Run(async delegate
{
await Task.Delay(5000);
lblLogOutput.Text = "";
});
您可以使用
Stop
功能,然后立即使用Start功能“重启”计时器
private void restartTimer()
{
timer1.Stop();
timer1.Start();
}
您可以使用
Stop
功能,然后立即使用Start功能“重启”计时器
private void restartTimer()
{
timer1.Stop();
timer1.Start();
}
只需使用一个间隔为5000的计时器。在OutputLog中,停止并启动计时器。当它滴答作响的时候,你就知道5秒已经过去了。我会查出来的,谢谢。只要使用一个间隔为5000的计时器就可以了。在OutputLog中,停止并启动计时器。当它滴答作响的时候,你就知道5秒已经过去了。我会检查一下,谢谢。你可能应该提到你说的是什么类型的“计时器”。目前,OP并没有使用它。您可能应该提到您所说的“计时器”的类型。目前,OP没有使用一个