事件结构--- 利用UserEvent
时间:01-09
来源:互联网
点击:
LV6.1中LABVIEW引入了事件结构,事件驱动是VB,VC等流行编程语言的基本设计思想,lV+EVENT STRUCTURE的引入是对labview是个非常大的进步.可能是在7.1中又加入的用户事件和动态注册事件,这是过去经常用VC语言编程的工程师热切盼望的.
熟悉VC的人都知道,WM_USER是Mircrosoft专门为用户预留的消息,通过它就可以向主窗口发送各种命令和数据.
现在,LABVIEW也具有了这种能力了,不知道大家用过了没有.
假如一个项目,控制了几台设备,同时并行工作,各个并行的控制循环如何和主循环交换数据那?可以通过全局变量,共享变量,通过控件参考,利用队列...
今天介绍一个新的方法,充分利用USER EVENT.
首先,利用Custom Control制作一个strict type def 的簇,我举的例子是模拟WINDOWS消息,实际可以是任何类型,用变体数据可能更为合适一些.
这里我定义了50种消息
每个事件需要传递的信息是:
1.消息号(50种,可以理解成50种命令)
2.字符串,用来传递信息
3.4是两个数据,模拟WINDOWS的 wParam 和lParam
下一步要利用Action Engine方法,把所有的操作都封装在一个SUBVI中
首先在First call=TRUE 中生成用户事件,并返回参考,存储在SHIFT REGISTER中.
这里共定义了三个命令: GetRef(取得参考) Fire(产生事件) Release(释放)
这样一个完整的AE就形成了,具体调用方法如下图:
具体效果演示:
事件结构UserEven 相关文章:
- 频宽、取样速率及奈奎斯特定理(09-14)
- 为什么要进行信号调理?(09-30)
- IEEE802.16-2004 WiMAX物理层操作和测量(09-16)
- 为任意波形发生器增加价值(10-27)
- 基于PCI 总线的高速数据采集系统(09-30)
- 泰克全新VM6000视频测试仪助力数字电视等产品测试 (10-06)