From 11:00 PM CDT Friday, Nov 8 - 2:30 PM CDT Saturday, Nov 9, ni.com will undergo system upgrades that may result in temporary service interruption.
We appreciate your patience as we improve our online experience.
From 11:00 PM CDT Friday, Nov 8 - 2:30 PM CDT Saturday, Nov 9, ni.com will undergo system upgrades that may result in temporary service interruption.
We appreciate your patience as we improve our online experience.
|
在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的相关章节(链接如下)。
|