LabVIEW应用开发——控件的使用(三)

接上文,这篇介绍簇Cluster控件。

LabVIEW应用开发------控件的使用(二)

1、簇Cluster

1)创建

蔟控件 又称为组合、集群控件,顾名思义它是一个类似于C语言的结构体 的一个数据结构 控件。在描述一个对象的时候,使用簇是必不可少的。比如要描述一只猫,它应该存在颜色、身高、体重,还存在一些行为的属性等等。几乎所有的编程语言都存在类似簇的数据结构,此数据结构让数据更好的实现分类和分层,也因此诞生了面向对象的改变。

簇控件也是LabVIEW的核心数据结构,创建方式和数组Array类似。区别在Array多了一个直接右键数据控件直接转换成Array的操作,簇控件不存在此方法。

簇控件拥有输入和输出属性,里面的控件的属性与簇控件相同。通过快捷菜单可以修改该属性,也可以通过改变其中的一个控件类型,簇控件属性也跟着变化,其他控件类型都会随之被修改。而如果后续有控件再加入,即使是相反的属性,也会自动适应被转换。

2)大小和排序

簇中的每个元素都是相对独立的,具有自己的标签和标题,每个控件都可以修改自己的属性。而簇本身的属性就比较简单,除了常规的标题、标签、大小、使能之外,只有一个自动调整大小属性,该属性包含四个选项:

  • :默认项,用户可以自由对控件的位置进行拖动,
  • 自动调整大小:控件位置由用户绝对,但是框架会自动缩小,让控件不占用其他空间,
  • 水平和垂直排列:控件排列的同时,簇会自动调整框架和控件的大小。
3)簇的逻辑次序

簇中的顺序是很重要的一个特性,先加入的序号为0,后面依次递增1、2、3.....,簇相关的函数运算有些是需要根据簇的序号操作,右键Reorder Controls重新排序,可以查看控件的序号,光标变成手形,根据序号依次点击元素,进行重新排序。

4)簇的自定义

簇作为一种数据结构类型,模块化子VI的场景下,通常需要采用同一种数据结构,这种情况下簇的作用就非常的明显。

我们可以再一个VI中创建簇结构,然后复制粘贴使得每个VI采用相同的簇。但是这种方法有个致命的缺陷,如果簇结构中需要增加一个或者多个新元素,那么全部的子VI都需要重新构造。解决该问题的方法是自定义簇文件,把簇结构保存在单独的文件中,使得每个使用它的VI都能和该文件保持链接关系。

下面我们通过一个学生信息的簇结构,来了解如何构造自定义簇。学生信息分两个,个人信息和基本信息,个人信息包括姓名、年龄、性别,基本信息包括班级、学号、职务。

第一步:打开自定义控件编辑器

第二步:建立两个控件并自定义簇,保存学生个人信息和基本信息,选择严格自定义控件Strict Type Def.,否则无法与子VI建立链接。

第三步:建立子VI与自定义控件的链接,簇中包含两个元素,分别为第二步建立的自定义簇。

这时候如果修改了簇控件的内容,比如我们基本信息新增"座位",会发现在子VI中的基本信息控件显示为灰色,并且执行的时候报错。

在子控件中选择文件File->应用修改Apply Changes,即可应用到全部使用该控件的子VI中。

在日常的编程中,我们要尽可能的使用严格自定义方式,避免出现子控件中簇发生修改,而子VI没有发生变化的情况。

相关推荐
徐子童2 天前
网络协议---TCP协议
网络·网络协议·tcp/ip·面试题·1024程序员节
我比怪兽还怪2 天前
simulink导出dll labview调用
labview
LabVIEW开发2 天前
LabVIEW 调用 Win10 触控键盘(TabTip.exe)说明
labview·labview知识·labview功能·labview程序·触屏键盘
扫地的小何尚3 天前
NVIDIA RTX PC开源AI工具升级:加速LLM和扩散模型的性能革命
人工智能·python·算法·开源·nvidia·1024程序员节
数据皮皮侠AI4 天前
上市公司股票名称相似度(1990-2025)
大数据·人工智能·笔记·区块链·能源·1024程序员节
开开心心就好5 天前
系统清理工具清理缓存日志,启动卸载管理
linux·运维·服务器·神经网络·cnn·pdf·1024程序员节
ewb_topic5 天前
重新定义PC仪器:我们发明了一种方法,给“看不见”的软件延迟装上了刻度
labview·虚拟仪器
私人珍藏库7 天前
[Windows] 卸载软件Uninstall Tool3.8.0
pc·工具·软件
Evan东少7 天前
[踩坑]笔记本Ubuntu20.04+NvidiaRTX5060驱动+cuda+Pytorch+ROS/Python实现人脸追踪(环境准备)
1024程序员节
私人珍藏库8 天前
[Windows] QQMusic(QQ音乐)_v22.1.0 绿色版
pc·工具·软件·绿化