我有一个长时间运行的宏,在其中我会定期向输出窗口写入消息,以便用户知道正在发生某些事情。问题是,输出窗口直到宏完成后才会显示(除非您奇怪地打开“继续等待?”对话框)。
有没有办法“刷新”事件队列?
有没有办法“刷新”事件队列?
DTE.SuppressUI = False
Threading.Thread.Sleep(5000)
因此,我建议在需要确保UI更新的情况下,使用标准的DoEvents
和Sleep(55)
循环约250毫秒左右,以及SuppressUI=False
。