我正在开发的程序使用线程来处理长时间运行的进程。我希望能够使用 Gauge Pulse 向用户展示,当一个长时间运行的线程正在进行时,实际上正在发生一些事情。否则在处理大文件时很长一段时间内视觉上什么都不会发生,用户可能会认为程序什么也没做。
我在程序的状态栏中放置了一个量规。我的问题是这个。我在尝试调用仪表脉冲时遇到问题,无论我将代码放在哪里,它要么运行得很快然后停止,要么以正确的速度运行几秒钟然后停止。
我尝试将下面的一行代码放入线程本身。我还尝试从长时间运行的进程线程中创建另一个线程来调用下面的代码。我仍然遇到同样的问题。
我不认为我可以使用 wx.CallAfter ,因为这会破坏这一点。Pulse 需要在进程运行时调用,而不是事后调用。还尝试了使用 time.sleep(2) 这也不好,因为它减慢了进程,这是我想避免的。即使使用 time.sleep(2) 我仍然遇到同样的问题。
任何帮助将不胜感激!
progress_bar.Pulse()