石鑫华视觉 发表于 2021-10-20 14:53:38

LabVIEW大量控件重复属性操作的一种优化解决方法

LabVIEW大量控件重复属性操作的一种优化解决方法
LabVIEW编程,在一些小项目中,确实是挺快的。拖拉几条线,啪啪啪放几个控件,一个WHILE循环就搞定了。但是,如果程序大了,控件多了,然后又要各种特效,什么控件要显示,什么控件不要显示,要赋值,范围内的显示绿色,范围外的显示红色。几百几千个控件。。。。那就郁闷了,因为你会发现,做的事,都是重复的,对每一个控件的属性进行操作。把什么可见属性、颜色属性调出来,然后根据条件赋值。。。做一两个很好处理,弄个十个八个也可以接受。要弄几百个,那不得疯掉?

那有什么快速的方法吗?当然还是有的。可以考虑使用一个簇。将功能统一的控件,都放到簇内。例如说,有几百个布尔控件。用来显示是否合格。那就可以把这些布尔显示控件全放到簇中,然后簇的属性>控件[],就可以得到簇中所有控件的引用。之后再使用FOR循环,对控件引用数组进行操作,如赋值、判断、显示等,就可以在FOR循环中,对簇中所有控件进行操作了。这样就不用每个控件都去手动处理,效率提升100000%。当然,如果都是一样的,也可以用数组,不过数组限制比较大,不能有不同的类型,也不能对每个元素处理标签,更不能分散排布。还是建议使用簇,用簇的话,自动调整大小设置为无或调整为匹配大小,不要设置为水平排列或垂直排列。这样就可以根据自己的需要,将不同的控件放到界面的不同位置进行显示,然后将其它非簇内的控件,移到簇控件的上层(控件是可以控制层关系的)。


一个演示示例
簇中包含了4个布尔量

博仔 发表于 2022-12-23 19:43:09

机器视觉商城供应各种图像采集卡,1394卡、千兆网卡、IO卡。进视觉商城选购吧

yaozhengqiu 发表于 2023-6-13 16:13:52

厉害厉害,学习了。
页: [1]
查看完整版本: LabVIEW大量控件重复属性操作的一种优化解决方法

LabVIEW HALCON图像处理入门教程(第二版)
石鑫华机器视觉与LabVIEW Vision图像处理PDF+视频教程11种全套
《LabVIEW Vision函数实例详解》教程-NI Vision所有函数使用方法介绍,基于NI VISION2020,兼容VDM21/22/23/24