TA的每日心情 | 怒 12 小时前 |
---|
签到天数: 3384 天 连续签到: 6 天 [LV.Master]2000FPS
|
发表于 2021-10-20 14:53:38
|
显示全部楼层
|阅读模式
来自:广东省东莞市 电信
注册登陆后可查看附件和大图,以及购买相关内容
您需要 登录 才可以下载或查看,没有账号?注册会员
x
LabVIEW大量控件重复属性操作的一种优化解决方法
LabVIEW编程,在一些小项目中,确实是挺快的。拖拉几条线,啪啪啪放几个控件,一个WHILE循环就搞定了。但是,如果程序大了,控件多了,然后又要各种特效,什么控件要显示,什么控件不要显示,要赋值,范围内的显示绿色,范围外的显示红色。几百几千个控件。。。。那就郁闷了,因为你会发现,做的事,都是重复的,对每一个控件的属性进行操作。把什么可见属性、颜色属性调出来,然后根据条件赋值。。。做一两个很好处理,弄个十个八个也可以接受。要弄几百个,那不得疯掉?
那有什么快速的方法吗?当然还是有的。可以考虑使用一个簇。将功能统一的控件,都放到簇内。例如说,有几百个布尔控件。用来显示是否合格。那就可以把这些布尔显示控件全放到簇中,然后簇的属性>控件[],就可以得到簇中所有控件的引用。之后再使用FOR循环,对控件引用数组进行操作,如赋值、判断、显示等,就可以在FOR循环中,对簇中所有控件进行操作了。这样就不用每个控件都去手动处理,效率提升100000%。当然,如果都是一样的,也可以用数组,不过数组限制比较大,不能有不同的类型,也不能对每个元素处理标签,更不能分散排布。还是建议使用簇,用簇的话,自动调整大小设置为无或调整为匹配大小,不要设置为水平排列或垂直排列。这样就可以根据自己的需要,将不同的控件放到界面的不同位置进行显示,然后将其它非簇内的控件,移到簇控件的上层(控件是可以控制层关系的)。
一个演示示例
簇中包含了4个布尔量
大量控件操作.vi
(11.73 KB, 下载次数: 18)
|
|