代码之家  ›  专栏  ›  技术社区  ›  Benjol

Visual Studio宏中是否有等效的DoEvents?

  •  5
  • Benjol  · 技术社区  · 14 年前

    我有一个长时间运行的宏,在这个宏中,我编写周期性的消息来输出,以便用户知道发生了什么事情。问题是直到宏完成后才会显示输出(除非您有Continue Waiting?奇怪的是,对话框打开了)。

    1 回复  |  直到 12 年前
        1
  •  0
  •   Mark Hurd    13 年前

    如果引用Windows窗体,则可以正常访问Application.DoEvents。

    我有主IDE响应windows更新并在宏仍在运行时实时关闭

        DTE.SuppressUI = False
        Threading.Thread.Sleep(5000)
    

    因此,我建议使用一个标准 DoEvents &安培; Sleep(55) 循环250毫秒左右,当您想确保UI被更新时,应该可以做到这一点,同时 SuppressUI=False .