我对VB .net还很陌生,我正在尝试编写一个程序,该程序不断监视从PLC中提取的信息并在更改时进行更新。
我在微控制器方面做过一些工作,我知道制作无限循环效果很好。我用VB .net代码遇到的是当它循环时,表单基本冻结,标签永远不会更新。我尝试使用下面的代码。
Do While True
*Code*
Loop
所以,我想我的第一个问题是,有一个连续程序来更新数据的最佳方法是什么。似乎无限循环不是答案。
我的第二个问题是,像微控制器一样,VB .net可能是一个中断驱动程序而不是事件驱动程序。我的程序一直在运行,在数据进入时更新数据,但如果按下一个按钮,它就可以完全摆脱循环。或者我的想法,暂时离开循环执行另一个功能然后继续回到循环。
我查看了System.Timers命名空间,并没有100%清楚它们是如何工作的。这似乎是我的问题的潜在答案。如果我有一个每秒钟执行代码的计时器,只要表单运行正确,这一秒就会出现?假设前面的语句是正确的,如果代码从1秒钟开始运行,并且在该代码运行时按下按钮,则忽略按钮,或者在代码完成后事件发生。
任何能帮助我学习的东西都会受到极大的关注!
答案 0 :(得分:0)
您可以使用
Application.DoEvents()
- .NET框架提供的方法,它实质上更新了您的表单,以应用同时发生的所有更改。