主页
技术支持
在LabVIEW中索引簇(Cluster)中元素
在LabVIEW中索引簇(Cluster)中元素
更新 Jun 3, 2021
环境
环境显示经过验证可用于本文描述的解决方案的产品。此解决方案也可能适用于其他类似产品或应用程序。
软件
LabVIEW
如何像索引数组一样去索引簇,利用For循环以编程方式处理修改各簇中元素?
使用属性节点,您可以获取一个包含簇中每个元素引用句柄的数组。该数组可用于访问簇中每个元素的属性和方法。请按照以下步骤操作以实现以上功能:
为簇创建属性节点(Property Node)。右键单击簇输入控件或显示控件,选择“
创建”»“属性节点”。
选择簇属性节点的
控件
[](
Controls[])
属性。控件
[]
属性的输出是一个包含簇中每个元素引用句柄的数组,其排列顺序与簇中元素的排列顺序一致。
将簇属性节点的
Controls[]
接线端连接至For循环。默认情况下,数组将创建自动索引隧道。
为
Controls[]
数组创建一个属性节点。在程序框图中,右键单击打开函数选板。找到应用程序控制子选项板,然后选择
属性节点 VI
。将属性节点 VI放置在For循环内部,并将其引用输入接线端连接至由
Controls[]
数组创建的循环隧道。
展开
Controls[]
数组的属性节点以访问两个属性。将第一个属性更改为
类名(ClassName)
。
ClassName
属性显示指定簇中元素的数据类(数值,布尔,字符串等)。将第二个属性更改为
值(Value)
。 Value属性显示指定簇中元素的数据值。
您可以将
ClassName
属性连接到条件结构的条件选择器接线端,以基于不同类对族中元素执行相应操作。
使用
变体至数据转换(Variant to Data)
VI
将特定簇中元素的Value属性转换为适当的数据类型。实现方法请参见下图。
注意:请务必重命名条件分支以匹配传递的数据类型。如果在变体至数据转换 VI中产生错误91,请在ClassName字符串与条件选择器的连线上放置探针,并高亮显示执行过程,以确认正确标记了对应的条件分支名称。数值应标记为“Digital”。
若簇中包含数组,请使用
转换为特定的类 VI
来访问该数组数据结构的属性。然后,您可以使用属性节点访问该数组元素的引用。这将返回数组中单个元素的引用句柄。然后,您可以使用另一个属性节点来访问该数组元素的类名(ClassName)。与上述步骤4类似,您可以使用此信息执行正确匹配变体数据的条件分支。
相关链接
NI Community Example: Determining the Data Type of all Front Panel Controls & Indicators Programmatically Using LabVIEW
Accessing Controls Within a Cluster Using a Property Node
其他支持选项
询问NI社区
在我们的论坛中与其他用户协作
搜索NI社区以寻求解决方案
请求工程师的支持
可能需要有效的服务协议,支持选项因国家/地区而异。
打开服务请求
购买或续订支持服务
Was this information helpful?
Helpful
Not Helpful