From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.

We appreciate your patience as we improve our online experience.



使用注册事件回调节点来代替ActiveX Event VI



主要软件:
主要软件版本: 7.0
主要软件修正版本: N/A
次要软件: N/A

问题:

在LabVIEW 7.0的升级须知中提到ActiveX Event VI 不在函数选板上,如果我想要使用ActiveX事件就必须采用Register Event Callback Node来注册并处理ActiveX事件。请问Register Event Callback Node和ActiveX Event VI间有什么类似之处吗?



解答:

在LabVIEW 6.1或之前的版本中,可借助List Event Descriptions VI获得一系列针对特定ActiveX目标的事件。接着为每个须处理的事件创建ActiveX事件队列,最后轮询事件。

在LabVIEW 7.0或之后的版本中,可借助Register Event Callback Node来处理ActiveX事件。正如LabVIEW帮助文档中所阐述的,该节点可注册一个VI用以在事件发生时回调。

首先从Register Event Callback node中选择一个事件,然后创建回调VI。不同的事件具有不同的事件数据格式,因此创建回调VI后改变事件会损坏程序框图上的连线。所以,必须在创建回调VI之前选择事件。

创建了回调VI之后,打开回调VI并编辑程序框图来处理事件。回调VI包含如下元素:   

注意:改变Register Event Callback node的大小可同时为一个ActiveX对象或多个对象注册多个事件回调VI。

在LabVIEW 7.1或之前的版本中,参照LabVIEW用户手册中19章的ActiveX事件部分获取更多信息(链接如下)。在LabVIEW 8.0或之后的版本中,参照LabVIEW帮助中Registering and Handling .NET and ActiveX Events的相关章节(链接如下)。

 



相关链接: Product Manuals: LabVIEW User Manual
LabVIEW Help: Registering and Handling .NET and ActiveX Events
Product Manuals: LabVIEW 7.0 Upgrade Notes

附件:





报告日期: 04/30/2003
最近更新: 03/06/2013
文档编号: 2WTH5A3N