labview编程技巧-----xcontrol如何发送用户事件
时间:01-09
来源:互联网
点击:
我在XCONTROL一文中详细说明了如何利用属性和方法,通过XCONTROL的事件结构,建立XCONTROL的方法.
先看看程序实现的功能

按下SnapShot(捕捉)按钮后,XCONTROL自动通过用户事件把捕捉到的图象传送到调用VI

要想调用VI响应用户事件,必须得到用户事件参考,最好的办法是通过XCONTROL的只读属性得到,这样就需要在xcontrol的STATE中定义这个属性,看一下它的状态定义:

这个用户事件的数据是一个图片框,得到这个参考是需要技巧的,我演示一下方法:

另外一种常用的方法:

首先在XCONTROL的INIT中生成用户事件

在UNINTI.VI中销毁用户事件

在FACADE.VI中发送用户事件

这样只要XCONTROL的捕捉按钮按下,XCONTROL响应这个按钮同时把图片通过用户事件发送出去.
看看调用VI是如何响应用户事件的.
通过属性可以控制XCONTROL的显示状态,通过方法,可以要求XCONTROL执行动作(命令),有的时候,XCONTROL需要想调用VI发送数据或者命令,要求调用VI执行动作,如何实现这个目的,有几种方法,全局变量,队列,用户事件,使用全局变量显然是不合适的,我们用XCONTROL的目的是实现组件封装,XCONTROL的运行不应该依赖于外部变量,使用队列也有它的问题,是我们不得不专门用一个循环来处理队列,这对一个不太经常发生的数据传送 ,显然是不经济的.
今天推荐一个方法,使用用户事件.
关于用户事件,我专门有一篇文章介绍.现在的LV编程,采用事件结构越来越多,我们只需要简单地
先看看程序实现的功能

按下SnapShot(捕捉)按钮后,XCONTROL自动通过用户事件把捕捉到的图象传送到调用VI

要想调用VI响应用户事件,必须得到用户事件参考,最好的办法是通过XCONTROL的只读属性得到,这样就需要在xcontrol的STATE中定义这个属性,看一下它的状态定义:

这个用户事件的数据是一个图片框,得到这个参考是需要技巧的,我演示一下方法:

另外一种常用的方法:

首先在XCONTROL的INIT中生成用户事件

在UNINTI.VI中销毁用户事件

在FACADE.VI中发送用户事件

这样只要XCONTROL的捕捉按钮按下,XCONTROL响应这个按钮同时把图片通过用户事件发送出去.
看看调用VI是如何响应用户事件的.
labview编程技巧xcontrol用户事 相关文章:
- 频宽、取样速率及奈奎斯特定理(09-14)
- 为什么要进行信号调理?(09-30)
- IEEE802.16-2004 WiMAX物理层操作和测量(09-16)
- 为任意波形发生器增加价值(10-27)
- 基于PCI 总线的高速数据采集系统(09-30)
- 泰克全新VM6000视频测试仪助力数字电视等产品测试 (10-06)
