【问题标题】:How to add a timing event如何添加计时事件
【发布时间】:2013-10-16 19:29:54
【问题描述】:

有没有办法当我点击 ToolStripButton 时,它会显示 WaitCursor 并更新 StatusStrip 大约 10 秒,然后恢复正常。我只是不知道如何输入编码。

如果有人可以指导我完成整个过程。 (甚至给我代码)

谢谢

J马宏

【问题讨论】:

  • 你在做什么需要 10 秒。你试过什么代码?
  • 我尝试的编码是 Me.UseWaitCursor = True ToolStripStatusLabel1.Text = "正在保存,请稍候" 我只是不知道如何获得 10 秒位
  • 为什么不设置光标 (Me.Cursor = WaitCursor),做你的事,然后再设置回去。无需设置定时器。除非您正在保存旧约,否则它通常会发生得足够快以至于您不需要消息,特别是如果用户只是单击了保存。
  • 你说得很好。但我希望应用程序等待 10 秒,你看它甚至没有保存任何东西,我只是希望它这样做。还可以吗?
  • 您可以使用计时器或带有 thread.sleep(10000) 的线程来执行此操作。我认为 Lambda 和 async 可能有一种方法可以将所有方法都放在一个方法中。你用的是什么版本的 VS/Framework?

标签: windows vb.net events timing toolstripbutton


【解决方案1】:

使用计时器:

1:将组件工具箱中的计时器添加到表单中。

2:将间隔设置为10,000(以毫秒为单位,1000 = 1秒)

3:在定时器的“Tick”事件中,编写如下代码:

Timer1.stop 'This assumes your timer it named Timer1
Me.Cursor = Cursors.Default

4:当你想让它显示光标时,要么有一个方法来完成这两行并调用该方法,要么就在整个地方写下这两行:

Me.Cursor = Cursors.WaitCursor
Timer1.Start

【讨论】:

    【解决方案2】:

    我建议使用 async/await 来保持“正常”的程序流程。

    Me.Cursor = Cursors.WaitCursor
    Await Task.Delay(10000)
    Me.Cursor = Cursors.Default
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-30
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多