LabVIEW应用开发——前面板和程序框图

2023-09-15 17:14:12

        上篇我们讲述了LabVIEW的安装并且新建了一个VI程序成功运行,这篇我们详细了解界面上一些工具、属性和层次结构。

        LabVIEW安装

        我们双击打开上次创建的.vi文件。

         这时候我们发现只有前面板,程序框图界面不见了,我们需要使用Ctrl+E或者在Windows-->Show Block Diagram选项中把程序框图调出来。而在程序框图界面,按Ctrl+E或者Windows-->Show Front Panel功能为调出前面板。所以我们经常使用此快捷方式来回切换前面板和程序框图。

 

        创建程序框图的过程就是我们用常规语言编写的代码过程,而输入控件的接线端子和显示控件的接线端子连在一起的过程,就相当于我们编码逻辑代码的过程。在我们的程序中有两个输入控件和一个输出控件,输出控件又称呼为显示控件

工具选板

        如果工具板没有显示,在View--Tool Palette选项调出。

         在前面板和程序框图的操作都需要工具选板的支持,先来了解工具选板上各个按钮的名称和详细功能。

图标英文中文描述
Automatic Tool Selection自动选择工具选中后,根据鼠标的位置自动确认工具,按Shift+Tab组合键或单机此按钮可以禁用或者启动此工具。
Operate Value操作值选中后,对于数值型的控件,直接直接操控值的增减,对于字符型的控件,可以直接输入或者更改字符串。
Positon/Size/Select定位/调整大小/选择选中后,通过双击控件或者接线端子,可以定位,然后选中之后,拖动改变它的大小,还可以通过矩形框选择一个或者多个对象。
Edit text文本编辑工具选中后,用来编辑标签、标题,也可以用来改变数值型控件的值。
Connect Wire连线工具用于程序框图中对象(控件、运算等)之间的连线。
Object Shortcut Menu对象快捷菜单和鼠标右键弹出菜单功能相同,用于修改控件的属性,这个比较少用,一般直接右键。
Scroll Window滚动窗口鼠标滚轮窗口,鼠标拖动移动窗口
set/clear Breakpoint设置/清楚断点在VI、函数、节点、连线或者结构上设置或者清楚断点。
Probe Data探针数据连线上设置探针,观察流动的时候的瞬时数据,主要调试的时候用。
Get Color获取颜色获取当前窗口任意位置的颜色。
Set Color设置颜色设置对象元素的颜色,和获取颜色工具配合使用。

前面板和程序框图

        在LabVIEW中没有像其他编程语言有main函数入口,每一个VI都可以单独运行,不存在明显的入口,也没有编译的过程。其实我们在连线的过程中,后台就自动发生了编译的动作,编译过程是动态的,比如故意把程序连线弄得不合理,就发现运行的按钮,从run马上变成了list error

        在前面板我们右键调出控件表,程序框图右键调出函数表,这是常用的操作。前面板的用途主要两种,人机交互GUI程序员交互GPI,我们排版控件的时候东一个西一个,关联项交错堆叠,这样看上去起来就很吃力,不管什么语言,程序员都要保证清晰、整洁的界面,做到模块化、标准化,这样会让阅读起来更具有流程性、更好维护。并且LabVIEW还提供了布局工具,让程序员更好的设计界面。

        下面是网络上优秀的界面作品,看上去就很舒服,想改个东西也很方便。

布局

        在前面板和程序框图中都有布局工具对齐工具align objects分发工具distribute objects调整大小工具resize objects,每个工具里面由不同的子工具。布局需要网格才能更好的看出效果,而程序框图默认没有网格,使用CTRL+#或者Edit中调出来。

1、对齐工具

        对齐工具分别由顶部边缘对齐水平居中对齐底部边缘对齐左侧边缘对齐垂直居中对齐右侧居中对齐

        比如我们使用选择工具,选择三个控件,然后选择左侧边缘对齐,可以发现控件的左侧都在同一条垂直线上。

        需要注意一点,对齐方式是包括标签的,我把水箱的名字放到左侧,重新选择对齐,会发现是根据标签对齐的。对齐后如果移动了标签,就会导致对齐失效了。所以我们要先对齐控件本身,然后再对齐标签,避免出现对齐问题。

2、分布工具

        分布工具是为了让对齐好的控件放置再哪个位置,分别有顶部、底部、垂直中线、左侧、右侧、水平中心等边缘为基准的分布,还有垂直压缩水平压缩,为了让控件之间腾出更多的空间,这是一个很常用的布局功能。

         上面我们做好左侧边缘对齐,然后我们选择底部边缘为基准的分布,可以发现三个控件的底部线之间的宽度是一样的,这就是布局的功能。

        然后我们再选择最右边的垂直压缩布局,这时候会发现垂直方向控件的底部线和临近控件顶部线贴合再一起,极大的节省前面板和程序框图的控件之间的距离,让连线和布局变得更加的简单整洁。

3、调整大小工具

        一般情况下,我们在前面板新建一个控件,使用resize工具,按下鼠标左键可以调整固件大小,但是没办法精准的控制控件的大小,使用调整大小工具把控件的大小全部调整为一致。

        调整大小的工具有按最大宽度调整最小宽度调整最大高度调整最小高度调整最大高度和宽度调整最小高度和宽度调整

         比如我们选择两个文本显示控件,使用最大宽度调整之后,可以发现两个控件的宽度一样且输入3被自动调整为跟输入2一样的宽度。

                                           

         有一点值得注意,调整大小调整是控件的大小,不包含标签和一些刻度占用的空间。

        调整完大小,但是我们这么看出宽和高是多少呢,一种是右键控件,选择属性Properties,可以查看控件的属性,里面就包含控件的宽高。

        使用选取对象之后,选择调整大小工具的最后一项“设置宽高”,也可以对控件的宽高做设置。

         有些控件是没办法调整宽度或者高度的,比如文本输入框就没办法调整高度。

        选取对象还可以同时调整对象集合,可以一次性选中多个控件,同时调整宽高,从下图可以看出两个文本框的高度Height输入特地标了星号,下方解释为不可更改此属性。

        在网格中,我们鼠标定位最小单位是一个网格,而网格的单位是像素,无论是在前面板还是程序框图中,都是以像素点为基本单位的。一个网格占据多少像素点,我们可以通过工具Tool -->选项Options页面查看和设置,前面板默认为12个像素点,程序框图默认为16个像素。这里还可以设置是否显示网格背景对比度网格线样式等。

 

 

 

4、组合、锁定、次序
1)组合

        在我们拖动控件的时候,很多时候我们需要把好几个控件或者一整个排版好控件的模块一起移动位置,这时候我们可以使用选取工具把每个控件都选中,然后一起移动,如果需要撤销,只会一个控件一个控件的回撤,非常繁琐,我们需要组合Lock把控件组合在一起动作。

         我们使用选取工具把控件都选上,然后选择Group组合,就可以把这些控件组合在一起动作。如果要解除组合状态,使用Ungroup即可。

2)锁定

        锁定Lock和组合不同,组合是针对很多对象的集合,单一对象是没办法组合的,而锁定即可锁定一个,也可以锁定多个。对象一旦被锁定,那么它将不能够被进行任何编辑,包括移动、删除、复制,也无法修改控件的属性,使用解锁Unlock即可解除锁定状态。

3)次序

        在前面板的控件是可以叠在一起的,后创建的在顶层,次序越高,离操作者越“近”,次序高的可以把次序低的全部覆盖或者部分覆盖。使用次序指令就可以改变控件的次序,分别有向前、向后、移动到最前面、移动到最后面四种指令。

         下图我们新建了四个水箱,然后我们选中水箱3,使用Move to Back移动到最后面,就会发现水箱3被放置在了其他水箱的最底下。

更多推荐

MR混合现实情景实训教学

MR混合现实技术是一种将虚拟现实与现实场景相融合的创新技术,可以广泛应用于各个领域。其中,混合现实情景实训教学是MR技术的一个重要应用场景。在医学专业方面,医学生常常需要通过实际操作来提升自己的技能水平,然而传统的实训方式存在着一些问题,如实际设备的限制和真实情况的局限性。采用MR混合现实情景实训教学,学生可以通过佩戴

Stream流编程

目录获取流Stream流的常用方法:count.filter方法:forEach方法limit方法map方法skip方法concat方法收集Stream流流格式Stream<T>filter(Predicate<?superT>predicate);----->参数:publicinterfacePredicate<T

【Apollo】开启Apollo之旅:让自动驾驶如此简单

前言Apollo是百度公司推出的自动驾驶平台。它是一个综合性的自动驾驶解决方案,提供了包括感知、决策、规划和控制等核心功能,以及地图、定位、仿真、数据管理等配套工具。文章目录前言Apollo的发展历程Apollo8.0新特性软件包管理感知框架工具链小结云端体验软件包安装总结活动活动介绍学习形式课程安排活动奖励报名方式A

Docker部署单点Elasticsearch与Kibana

一、创建网络因为需要部署kibana容器,因此需要让es和kibana容器互联。这里创建一个网络:dockernetworkcreatees-net#创建一个网络名称为:es-net二、拉取并加载镜像方式一dockerpullelasticsearch:7.12.1版本为elasticsearch的7.12.1版本的镜

Jenkins学习笔记3

git+github+jenkins:架构图:说明:jenkins知道github有更新了,就pull进行构建build,编译、自动化测试。然后部署到应用服务器。mavenjava的项目构建工具。在开发者电脑上创建空密码密钥对。[root@git-developer~]#gitclonegit@github.com:c

解决https页面加载http资源报错

为什么会报错?HTTPS页面加载HTTP资源会报错的原因是出于安全性考虑。HTTPS(HyperTextTransferProtocolSecure)是一种通过使用SSL/TLS加密通信来保护数据传输的协议,它确保了客户端和服务器之间的安全连接。当HTTPS页面尝试加载非加密的HTTP资源时,存在以下问题:混合内容警告

Scrapy爬虫框架实战

Python实现爬虫是很容易的,一般来说就是获取目标网站的页面,对目标页面的分析、解析、识别,提取有用的信息,然后该入库的入库,该下载的下载。以前写过一篇文章《Python爬虫获取电子书资源实战》,以一个电子书的网站为例来实现python爬虫获取电子书资源。爬取整站的电子书资源,按目录保存到本地,并形成索引文件方便查找

海康摄像头开发笔记(一):连接防爆摄像头、配置摄像头网段、设置rtsp码流、播放rtsp流、获取rtsp流、调优rtsp流播放延迟以及录像存储

文为原创文章,转载请注明原文出处本文章博客地址:https://hpzwl.blog.csdn.net/article/details/131679108红胖子(红模仿)的博文大全:开发技术集合(包含Qt实用技术、树莓派、三维、OpenCV、OpenGL、ffmpeg、OSG、单片机、软硬结合等等)持续更新中…(点击传

git的使用(详细教程)通过命令行操作及vscode插件

个人仓库创建首先在网页中注册并登录gitee,然后进行如下操作:1、在Gitee页面右上角找点+号点击新建仓库2、填写一个仓库名称,下移将红框圈起的方框勾选上即可创建仓库(仓库介绍可写可不写)3、创建成功跳到如下界面4、此时不要关闭该页面,到文件中新建一个文件夹(文件夹名字随意,在C/D/F盘建都可以)打开新建的文件夹

RES 系列 GRES: Generalized Referring Expression Segmentation 论文阅读笔记

RES系列GRES:GeneralizedReferringExpressionSegmentation论文阅读笔记一、Abstract二、引言三、相关工作有关的指代任务和数据集指代分割方法四、任务设置及数据集4.1GRES设置RES回顾一般化的RES评估4.2gRefCOCO:一个大尺度的GRES数据集多目标样本计数

Kotlin File.reader BufferedReader readLine

KotlinFile.readerBufferedReaderreadLineimportjava.io.BufferedReaderimportjava.io.Filefunmain(args:Array<String>){valfilePath="./myfile.txt"valfile=File(filePath

热文推荐