炉石爆牌卡组2017:VB运行后,界面为何无法实时刷新?

来源:百度文库 编辑:神马品牌网 时间:2024/04/29 09:42:37
我做的是一个基于USB的数据采集系统,我将数据送到VB上后,VB界面应该会实时显示采集到的数据,并在VB的坐标上描出点来,以画出波形。可是采集到的数据根本无法实时显示,用以显示的TEXT内容一直是空着的。但是波形却能实时画出来。假如我让VB连续采集十个值的话,VB只能显示最后一次采集到的值。在采集数据过程中,我VB哪里都不能动了,跟死掉了一样。这到底是什么问题啊,请求高手啊!!!!谢谢!!
用DOEVENTS可以了呢,真是太感谢了~~
也谢谢iiipin,呵呵

1 不要尝试多线程,VB提供对多线程的支持,但是没有提供对多线程的同步,所以在VB 6.0中使用多线程非常危险
2 你说的象死机一样,可以通过在关键代码处加 DOEVENTS这个语句实现
3 你说的TEXT中一直是空,原始是因为VB独自占用全部资源,无法想WINDOWS发送消息,你应该知道,光靠应用程序自身,是没有对控件,哪怕是自身控件的值进行改变的权力的,所以解决这个问题和2 一样加上DOEVENTS就可以了。
不知道你对老衲的回答满意否?

建议试试多线程
以下为我的分析:
程序是单线程的吧,主线程在实时接收数据同时,还在处理绘图函数,程序没有足够的时间来处理窗体事件,无法及时响应外部事件,
建议采用多线程,主线程留空给windows事件,其它线程接收数据并绘图

高手问题................