当前位置: 首页 > news >正文

【LabVIEW学习篇 - 10】:属性、调用节点

文章目录

  • 属性节点
  • 调用节点
    • 使用方法一
    • 使用方法二
    • 案例
  • 练习

属性节点

LabVIEW中的对象(包括控件、VI、应用程序等)都有自己的属性和方法。属性就是对象与生俱来的一些特性,可以理解成它是静态的,如控件的背景颜色,坐标位置,名称等等。
在这里插入图片描述

  1. 通过控件创建属性节点:在前面板中创建一个数值输入控件,然后在程序框图中,选中该控件,鼠标右键-创建-属性节点-值(属性节点中有多个选项,本案例中选择“值”),最后读取其值。
    在这里插入图片描述
    在这里插入图片描述

  2. 在应用程序控制中创建属性节点:在程序框图中,鼠标右键-应用程序控制-属性节点
    在这里插入图片描述
    这个属性节点并没有与某个控件有所关联,这个节点它并不知道我们要操作哪个对象,所以说它要求传入一个引用,这个引用就是你想操作对象的索引,相当于它在内存中存放的一个地址,可以通过引用,在内存中找到我们的对象。
    (而在控件上选中右键创建的,就直接与控件形成了对应关系,即是“死”的,不需要另外传入。)
    选中数值注入控件,鼠标右键-创建-引用,将其引用与属性节点连接。
    在这里插入图片描述
    左键点击属性,即可选择对应的节点。

  3. 创建属性节点后进行链接:在应用程序控制中创建属性节点后,选中属性节点,鼠标右键-连接至-窗格,然后选择要链接的控件,最后点击其属性,选择对应的节点。
    在这里插入图片描述
    在这里插入图片描述

调用节点

调用节点与属性节点很类似,但调用节点是对象所拥有的一种行为,去执行动作,可以理解成它是动态的。
在这里插入图片描述

使用方法一

在程序框图中,鼠标右键-应用程序控制-调用节点,然后选中该调用节点,鼠标右键-选择类-VI服务器-VI-VI(以VI为例)
在这里插入图片描述
结果
在这里插入图片描述

使用方法二

在程序框图中,创建调用节点,然后再鼠标右键-应用程序控制-VI服务器引用,并将VI服务器引用与调用节点连接起来。
在这里插入图片描述
结果
在这里插入图片描述

案例

使用调用节点,实现保存VI图标。

  1. 创建调用节点,并与VI服务器引用连接。然后鼠标左键点击方法,在VI图标中选择保存至文件。
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
  2. 创建对应的常量和输入控件。
    在这里插入图片描述
  3. 在某个文件夹下创建一个1.png(任命名字),然后在LabVIEW中选择该文件,最后运行,即可看到1.png为VI的图标。
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

练习

创建一个vi,界面上有一个布尔控件(LED),通过颜色盒子控件去改变布尔控件的显示颜色(通过属性节点),当程序停止时关闭vi的前面板(通过调用节点)。

  1. 在前面板中放置方形指示灯和停止按钮,并在程序框图中设置好对应的while循环结构和事件结构。
    在这里插入图片描述

  2. 添加事件分支,为 “停止”: 值改变 ,然后放置调用节点和VI服务器引用,将器连接在一起,然后在方法中选择前面板-关闭,最后使用平铺顺序结构将其排放好。
    在这里插入图片描述
    在这里插入图片描述

  3. 在程序框图中,放置属性节点,并选中方形指示灯,创建引用,将其与引用连接在一起,然后在属性中选择颜色[4],并修改属性节点为写入。
    在这里插入图片描述
    在这里插入图片描述

  4. 鼠标移动到Colors[4]的接线端,鼠标右键-创建输入控件,即可在前面板中看到该输入控件。
    在这里插入图片描述

  5. 添加事件分支,为 “颜色[4]”: 值改变,并将其修改颜色的操作放置到该分支中。
    在这里插入图片描述

  6. 运行结果。
    在这里插入图片描述
    当点击停止按钮后,前面板会关闭,即整个程序关闭。

http://www.lryc.cn/news/412437.html

相关文章:

  • 如何在数据埋点中发现和修复数据上报逻辑错误
  • 程序员面试“八股文”:助力成长还是应试枷锁?
  • 强化学习-alphazero 算法理论
  • 使用 Rough.js 创建动态水平条形图
  • Python教程(十):面向对象编程(OOP)
  • CTFHUB-文件上传-文件头检查
  • c语言数组与指针,字符串与指针,指向函数的指针,malloca动态内存分配
  • 代码随想录算法训练营day30 | 452. 用最少数量的箭引爆气球 、435. 无重叠区间、763.划分字母区间
  • 如何手动修复DLL丢失?2种手动修复dll文件方法
  • Node.js(2)——压缩前端html
  • 堆的实现-向上调整算法-向下调整算法-堆排序-TopK问题 C语言
  • 【C++BFS】1466. 重新规划路线
  • 服务器并发模型
  • Chapter 23 数据可视化——地图
  • Linux笔记 --- 组合数据类型
  • DaoCloud-Dockfile文件NGINX文件
  • 耳机行业中MIC ENC
  • python-自动化办公-Excel-Openpyxl
  • 图形编辑器基于Paper.js教程10:导入导出svg,导入导出json数据
  • [STM32][Bootloader][教程]STM32 HAL库 Bootloader开发和测试教程
  • 如何手写一个SpringBoot框架
  • vite解决前端跨域步骤
  • 同步交互与异步交互:深入解析与选择
  • Day1
  • Introduction to Data Analysis with PySpark
  • 基于双PI控制器结构的六步逆变器供电无刷直流电机调速simulink仿真
  • 双向链表的基本操作
  • modbus tcp和modbusRTU的区别是什么?
  • web小游戏开发:拼图(四)对调和移动拼图玩法的实现
  • 前端:Vue学习 - 智慧商城项目