Delphi:滚动同时 运行 实时
Delphi: scrolling whilst running real time
我实现了一个滚动框,它根据输入设备上可用的通道数动态添加 TCharts。图表在循环上重新绘制以显示通过通道的电压值,以便显示器有效地输出 "real-time" 施加到每个通道的电压视图。
目前我有一个 Application.ProcessMessages
功能来防止应用程序在 运行 期间变得无响应,但我希望能够在显示频道时滚动框,而不会打扰当前在单击滚动条时暂停的显示。
这可能吗?
是的,这是可能的。
The charts repaint on a loop ...
由自己的循环驱动的重绘确实确保了系统的呼吸困难,这正是需要 Application.ProcessMessages
的原因。 Try not to use it。相反,您应该只要求图表在新数据进入时用 Invalidate
重新绘制自己,并让系统决定何时方便这样做。
我实现了一个滚动框,它根据输入设备上可用的通道数动态添加 TCharts。图表在循环上重新绘制以显示通过通道的电压值,以便显示器有效地输出 "real-time" 施加到每个通道的电压视图。
目前我有一个 Application.ProcessMessages
功能来防止应用程序在 运行 期间变得无响应,但我希望能够在显示频道时滚动框,而不会打扰当前在单击滚动条时暂停的显示。
这可能吗?
是的,这是可能的。
The charts repaint on a loop ...
由自己的循环驱动的重绘确实确保了系统的呼吸困难,这正是需要 Application.ProcessMessages
的原因。 Try not to use it。相反,您应该只要求图表在新数据进入时用 Invalidate
重新绘制自己,并让系统决定何时方便这样做。