怎么在labview虚拟示波器vi里面找到下面图标的VI?

 上传我的文档
 下载
 收藏
该文档贡献者很忙,什么也没留下。
 下载此文档
正在努力加载中...
LabVIEW VI图标和连线板
下载积分:30
内容提示:LabVIEW VI图标和连线板
文档格式:PDF|
浏览次数:573|
上传日期: 04:00:42|
文档星级:
该用户还上传了这些文档
LabVIEW VI图标和连线板
官方公共微信查看VI的层次结构 - LabVIEW 2011帮助 - National Instruments
您的位置:& &
查看VI的层次结构
窗口以图形化的方式显示所有打开的LabVIEW项目和终端,以及内存中所有VI的调用结构。VI层次结构窗口工具栏包括以下部分:
项目和终端
静态和动态子VI调用
自定义类型
项目库(.lvlib)
Express VI
静态VI引用
(MathScript RT模块)引用的.m文件。
选择查看»VI层次结构,打开VI层次结构窗口。该窗口用于以及。
VI层次结构窗口显示顶层图标,代表LabVIEW主,其下显示的是所有未包括在该项目或项目应用程序实例中的对象。如在LabVIEW中添加项目,VI层次结构窗口中将显示表示该项目的顶层VI图标。所有添加的对象均位于项目之下。
将光标移至VI层次结构窗口的对象上,下方将显示该对象的名称。可使用定位工具,将对象从VI层次结构窗口拖曳至另一个VI的前面板或程序框图,在其它VI中使用这些对象。也可选择和复制一个或多个节点至剪贴板,然后粘贴至前面板或程序框图。在VI层次结构窗口中双击某个VI可显示该VI的前面板。
在VI层次结构窗口中可动态查看内存的使用情况。如层次结构中项的排列有所改变,则LabVIEW不会保存项的新位置。关闭并重新打开VI层次结构窗口时,将重新生成位置。
如一个VI含有子VI,则该VI的底边上有黑色箭头。单击该箭头按钮可显示或隐藏子VI。至少一个子VI为隐藏状态时,将出现一个红色箭头按钮。如所有子VI都已显示则箭头为黑色。如VI包含,VI层次结构窗口在递归VI之间绘制虚线以显示其关系。
您的评价!&
&差&&|&&好&
&文档质量?&
&是否解答了您的问题?&
&|&&|&&|&&&&&&&|&&&& KnowledgeBase
Chinese(China)
This Document is not yet Rated
我如何建立一个LabVIEW的VI库能自动包含所有的子VI?
PXI/CompactPCI>>Controllers
我需要去发布一个包含数个子VI的LabVIEW程序, 所以我要一个简单的方法去建立一个库(一个llb文件)以包含所有必要的文件. 当我选择 文件 && 另存为 以及新VI库, llb中将只会包含主VI而不会包含子VI. 请问有什么方法可以自动包含这些其他的VI到库里面吗?
有一个简单的方法可以让你封装所有的VI到LabVIEW的llb里面. 执行下面的步骤即可:
LabVIEW 8.x
&&&&& 1.&& 到 File & Save As... 将打开一个另存为对话框窗口。 &&&&& 2.&& 选择Duplicate hierarchy to new location.&&
&&& 3.&& 在选择一个文件夹或LLB窗口中点击新LLB&&& &&& 4.&& 输入新LLB的名称&点击&创建
LabVIEW 7.x
到 file & Save with Options
选择Development Distribution.
如果你希望建立一个可以在一台电脑上独立使用的库, 不需要安装个别的vi.lib文件, 你可以在Include vi.lib files的选项中打勾. 这将会保存所有的內建VI到你的程序中.(注意:这将会将窗口变为自定义保存)
如果你想要保存VI及子VI但不想保存其程序框图, 即使用者无法修改它的话, 可以选择Remove diagrams. 如果你需要在不同的平台下重新编译这个VI的话, 就不要勾选这个选项. 因为你无法重新编译一个没有程序框图的文件.
点击 保存。
这将会建立一个llb文件包含所有在程序中会用到的VI及子VI. 你现在已经将所有文件封装成一个llb了, 便可以发布出去. 一个llb中VI的保存变更会比一个个別的VI要来得久, 因为操作系统必须将这个变更写到更大的文件里去。 对一个大的llb的保存变更也会增加内存的需求及降低效能. 试着将每个llb文件的大小限制在1 MB以下 . 以下是一些将VI保存为库的优点:
你可以使用超过255个字符的文件名输入。 (注意: MAC OS 9.x 或更早的版本限制了只能使用31个字符。)
相对于转换多个VI,你可以轻松地转换一个库到其他的平台上。
你可以轻微压缩文件大小,因为VI库经过压缩从而减少磁盘占用率。
你可以在一个库中标识其中的某个VI是最上层的VI, 因此当打开这个llb时, LabVIEW会自动将所有上层VI打开。
注意:如果你有NI LabVIEW Professional Development System而且已经安装了必要的元件, 你可以在工具菜单中建立shared libraries (DLLs). 关于更详细的信息可以参考LabVIEW帮助文件
09/30/2003
02/01/2009
for all product and support inquiries.在LabVIEW中删除VI程序框图的方法
保护自己的源代码知识产权是一种维权的合法表现,下面为大家介绍一种LabVIEW中保护源代码的方法&&删除VI程序框图。
第一步,新建一个空白项目(New Projrct)。
第二步,为项目创建2个VI,Main.vi作为Startup VI,SubVI.vi作为子VI(我们将以删除该VI程序框图为例说明,该VI实现了一个简单的随机数数组输出功能)。
第三步,VI创建完毕后,为生成应用程序做准备。
&&&&&&&&&&&&&&&&&&&&&& 创建一个新的应用程序:Application(EXE)
&&&&&&&&&&&&&&&&&&&&&&&&&& 配置Startup VI和Include VI
关键:设置Source File Settings。记住要先选中SubVI.vi,然后在设置save settings
到此,设置完成,按照我自己的习惯,项目发布时,要先生成预览。
最后,打开...\builds\New Project\My Application\data\SubVI.vi,就会发现,程序可以执行,也可以被调用,但不可以被编辑,程序框图也没有了。
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& 程序框图没有了
&&最后修改于
请各位遵纪守法并注意语言文明1.1 从VI开始_第1章 打开LabVIEW编程之门_华初网
所在位置:
第1章&#32;打开LabVIEW编程之门<font color="#.1&#32;从VI开始
LabVIEW同其他编程语言和软件一样,安装程序界面友好、容易使用。将安装光盘插入到光驱后,自动启动LabVIEW安装。只要输入正确的序列号,所有的安装过程都能自动完成。安装结束后,重新启动计算机,然后用鼠标双击LabVIEW的快捷方式图标,即可启动LabVIEW。常规编程语言,如VB、VC的IDE开发环境,都是从新建一个具体的项目开始的,而LabVIEW的第一项是新建VI,显然VI对LabVIEW来说是非常基本和重要的概念。LabVIEW启动窗口如图1-1所示。&&& 图1-1& LabVIEW启动窗口新建一个VI后,呈现在我们面前的是两个常见的Windows窗口,分别为前面板窗口与程序框图窗口,如图1-2所示。我们在后面的讲述中将这两个窗口简称为前面板和程序框图。& 学习笔记:VI由前面板和程序框图组成。一般常规编程语言创建的程序,由一个图形界面窗口(一般称为GUI)和文本编辑窗口组成。LabVIEW中的VI,前面板相当于GUI,程序框图则相当于文本编辑器。显然,前面板是需要放置各种控件的,而程序框图是用来编写代码的。LabVIEW最大的特点是图形式编程语言,也就是说它的代码是完全图形化的,和常规的文本式编程语言截然不同。通过菜单栏的“工具”菜单,可以调出控件选板和函数选板,如图1-3所示。其中控件选板用于在前面板放置控件,函数选板用于在程序框图中放置函数(即代码)。&&&&&& 图1-2& 前面板窗口和程序框图窗口&&&&&&&&&&&&&&&&&&&&&&&&&&&&& 图1-3& 控件选板和函数选板LabVIEW给人的第一感觉,是控件的数量和种类远胜于其他编程语言。例如,在VC中要找到一个不同于Windows标准的控件是很困难的,有时候不得不采用“自画”的方式实现。另外一个明显的不同是,LabVIEW的控件分成输入控件和输出控件两部分,输出控件又称为显示控件。控件选板和函数选板的使用非常频繁,而使用菜单来调用它们非常不方便。最简单的调用方法是:右击前面板,弹出控件选板;右击程序框图,弹出函数选板;然后按快捷键Ctrl+E,即可快速在前面板和程序框图之间切换。1.1.1& 创建VI常规语言的入门程序一般是经典的“Hello World!”,即在显示窗口放置一个显示控件,一般是文本框,然后给这个文本框赋值。这里,我们也从“Hello World”VI的创建开始。要输出字符串“Hello World”,首先需要在前面板放置字符串显示控件。通过控件选板,选择字符串显示控件。此时出现一个带虚框的控件,将其移动到前面板合适的位置。单击前面板,字符串显示控件就会自动放置在前面板中。在前面板放置显示控件后,在对应的程序框图中自动出现对应的接线端子,如图1-4所示。接线端子是LabVIEW特有的概念,它与前面板控件一一对应。学习笔记:双击前面板中的控件或者程序框图中的接线端子,可以自动定位到对应的接线端子或控件。在快捷菜单中,通过查找控件或者接线端子,也可以实现同样目的。现在遇到的问题是如何给这个显示控件赋值。记住,数据流是LabVIEW编程的核心。作为字符串显示控件,它是数据要流动到达的目标。因此,必须有一个数据流出的源。我们自然想到,字符串输入控件就是数据源。用同样的方法,在前面板放置一个字符串输入控件。接下来我们需要考虑如何在输入控件和输出控件之间建立联系。在LabVIEW中创建程序框图的过程就相当于用常规语言编写代码的过程;输入控件接线端子和显示控件接线端子之间连线的过程,就相当于用常规语言编写语句的过程。前面板和程序框图的操作都离不开工具选板,所以在连线之前首先要熟悉一下工具选板,如图1-5所示,如果工具选板未显示,通过菜单栏中的“工具”菜单可以调出工具选板。在工具选板中,当鼠标箭头移动到工具按钮上时,会出现工具条提示。工具选板上各个按钮的名称和详细功能,如表1-1所示。&&& 图1-4& 放置字符串显示控件&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& &图1-5& 工具选板&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& 表1-1& 工具条提示通过连线工具创建的“Hello World”VI,如图1-6所示。LabVIEW中的VI类似一个函数,但是与C语言中的函数有明显区别。用常规编程语言编写的程序都有一个明显的入口点,比如main()函数。VI则不同,任何一个VI都是可以单独运行的,不存在明显的入口点。用常规编程语言编写代码后,需要明显的编译、连接过程,VI则不存在明显的编译过程,在我们对VI程序框图连线时,编译过程在后台自动发生,编译过程是动态的。单击工具栏中的“运行”按钮,运行VI,输入字符串控件当前的值将自动显示到字符串输出控件中。学习笔记:输出控件经过连线,把它的值传递给显示控件。工具栏中还提供了“连续运行”和“中止”按钮,如图1-6所示。这里要介绍一下“运行”和“连续运行”的区别:“运行”是程序运行一次就结束了,而“连续运行”是指VI连续不断循环运行。“连续运行”可以修改输入控件的值,而且显示控件能显示出动态修改的结果,当VI连续运行时只能通过单击工具栏的第3个按钮“终止运行”来结束。下面在图1-6所示VI的基础上,创建计算一次函数y=kx+b的VI,y作为计算结果输出,k、x、b作为参数输入。如图1-7所示,数值控件使用的是双精度数据类型,它的连线颜色与字符串明显不同。从连线的颜色和线型,可以明显区分数据类型,这是LabVIEW图形编程方式的突出特点。& &&&&&&&&&&&&&&&&&& 图1-6 “Hello World”VI&&&&&&&&&&&&&&&&&&&&&&&&&&&& &图1-7& 一次函数& 学习笔记:不同颜色、不同的线型表示不同的数据类型。当程序框图中出现未连线或连线错误时,工具条上的“运行”按钮就变成“错误”按钮。单击它会自动弹出错误列表对话框,提示出现的错误,而常规编程语言在编译的过程中提示错误,这说明LabVIEW的编译过程是在后台自动完成的。学习笔记:& LabVIEW程序的编译是在连线的过程中自动进行的。LabVIEW称做“G”语言。G指的是Graphical Programming Language,即图形化编程语言。对照其他文本方式的编程语言,G语言中键盘的作用似乎不重要了,因为在程序框图中既看不到变量,也看不出任何语句的存在。我们完全可以理解前面板中控件的含义,这和其他编程语言一样。GUI是由各种各样的控件集合成的,但是它的控件有独特之处:一是数量多,二是明确区分输入控件和输出控件。“数据流”是LabVIEW的核心,也是G语言的核心了。输入控件和显示控件中间的连线就表明了数据是由输入控件流动到显示控件。输入控件就是数据的“来源”,显示控件就是数据要流动到的“目的地”,而这个流动的过程是通过连线完成的。与日常的物理现象中的“流动”不同的是,流动后,输入控件的数据并没有“损耗”,依然存在,而显示控件的数据被“冲掉”了,变成了新的数据。既然是数据流,那么一点的数据应该可以流向多点,多点的数据也应该可以汇集成一点。实际上,上面的程序已经实现多点汇集到一点了,一次函数y=kx+b,k、x、b都是输入控件,是数据源,而目的地是y,这本身就是多个输入控件的数据汇集到一个显示控件。1.1.2& 控件属性设置与快捷菜单通过前面的学习,我们初步了解了LabVIEW程序是由VI组成的,而VI又是由输入控件、显示控件和数据连线组成。因此,深入了解和探讨控件是非常必要的。LabVIEW的控件种类繁多,即使是同一类型控件,在一些细节上也有很大差别。VB、VC也提供了大量的控件,如命令按钮、文本框、列表框和组合框等。LabVIEW提供的控件与众不同。首先,控件分成输入控件和显示控件,另外,控件的分组也很有特点。控件由数值控件、布尔控件、字符串和路径组、数组矩阵组、列表与表格组、图形组等组成。这不像普通的控件分组,更像是变量的数据类型分组。1.控件的基本属性一般的控件具有属性、方法和事件,LabVIEW的控件与常规控件类似,它也具有属性、方法和事件。一般的控件都包括“值”的属性,表示控件当前代表的数值或字符串等,也就是说控件是数据的容器,而数据的值只是控件属性之一。LabVIEW中不存在常规语言中变量的说法,任何数据都是依附于控件的。控件是数据的容器,数据不能离开控件而独立存在(移位寄存器和常量是例外)。LabVIEW的控件中包含数据,但是数据是有类型区别的,比如数字可以是整型,而整型又可以分成有符号和无符号、8位、16位、32位等。选定数据类型后,控件与数据类型就存在了对应的关系,不允许动态更改。控件作为对象,由多个组成要素构成,比如标签、标题、颜色、字体等。对于一个具体的控件,通过快捷菜单或属性对话框,可以修改其属性。不同种类的控件专用属性可能不同,但是其常规属性基本相同。这里以字符串控件的属性对话框为例,介绍常见的基本属性。在控件的快捷菜单中选择“属性”,弹出属性对话框,字符串属性对话框如图1-8所示。图1-8& 字符串属性对话框字符串属性对话框采用典型的选项卡方式,其中包括“外观”、“说明信息”、“数据绑定”、“快捷键”和“安全”5个类别。按照常规的表示方法,位于上方的属性一般是通用属性,而位于下方的往往是控件的专用属性。(1)“外观”选项卡上的属性用于控制控件显示的有关特征,控件的通用外观属性包括以下几点。&标签和标题:标签代表的是控件的名称,它在运行过程中属于只读属性,不能在运行过程中更改,相当于常规语言中的变量名。标题是控件显示给用户的信息,属于可读写属性,在运行过程中可以随时更改,一般多语言环境的软件都是采用类似的方法。&大小:包括高度和宽度,表示的控件大小信息。通过高度和宽度,可以精确控制控件的大小。&启用状态:包括“启用”、“禁用”和“禁用并变灰”三个单选按钮。它们用于表示控件的状态信息,处于禁用状态的控件不接受键盘和鼠标操作。& 学习笔记:控件的标签是内部名称,用于区别控件,而标题是用于人机交互的。(2)属性对话框的第二个选项卡页面为“说明信息”,由说明和提示框两部分组成。说明和提示框输入的是文本信息。&提示框内输入的内容就是通常所说的“工具条提示”,当移动鼠标箭头到控件上时,不执行任何操作,几秒后即出现“提示框”里的说明文字。&“说明”是控件的详细信息,可以对控件做详细解释。程序运行时,用鼠标选择控件,然后在右键快捷菜单中选择“说明”,就会弹出一个对话框,显示的就是我们输入的“说明”信息。& 在LabVIEW中文本输入的手动换行是通过快捷键Shift+Enter实现的。(3)其他选项卡,比如数据绑定、安全等,将在后续章节介绍。2.输入控件和显示控件的区别LabVIEW控件明显分成了输入控件和显示控件两大类别。LabVIEW作为一种用于工程的编程语言,是与测试测量和自动化控制密切相关的。从硬件的角度看,控件分成这两大类非常合适。以自动化控制为例,它的输入和输出是有明显区别的。比如继电器是输出类型的,而检测开关则是输入类型的。广泛使用的数据采集卡也分成模拟量输入和模拟量输出、数字量输入和数字量输出。从LabVIEW本身的编程特点来说,数据流是LabVIEW的核心概念,任何数据必须是有“源”的,这个“源”就是输入控件或者常量,常量可以理解成特殊的输入控件,而数据最终流向地就是显示控件。从控件本身的角度来看, LabVIEW其实只是推荐了控件的使用方法,并没有绝对地区分控件必须是输入控件还是显示控件。比如数值控件中有“旋钮”和“量表”。旋钮是输入控件,而量表是显示控件。这与现实情况是非常符合的。对于收音机的音量控制,确实有个物理的旋钮存在,而对音量,比较高级的收音机也确实有个简单的电子仪表来显示。LabVIEW的输入控件和显示控件是可以自由转换的。在控件的快捷菜单中就可以实现将输入控件转换成显示控件,或者将显示控件转换成输入控件。但这只是在程序编辑情况下才可以,在程序运行情况下是不允许转换的。如果允许的话,数据流的流向就会发生变化,这将导致数据流无法实现。3.控件快捷菜单LabVIEW对控件的许多操作都是通过快捷菜单实现的,所以有必要深入研究一下快捷菜单。对于不同的控件,快捷菜单既有相同的部分,也有不同的部分。相同的部分适合所有的控件,而不同的部分对应着控件的特殊属性。以一个旋钮控件为例看一下控件的快捷菜单,如图1-9所示。显示项中包括标签和标题,这是控件的通用基本属性。通过这个菜单可以选择控件标签以及标题是否可见,前面我们通过属性对话框同样可以设置这两个属性。如果只想设置控件的部分属性,直接用快捷菜单比较方便。图1-9& 旋钮控件的快捷菜单显示项中还有单位标签、数字显示和梯度三个选择项,图1-10演示了它的不同效果。图1-10& 旋钮控件的不同显示效果通过上面的效果图我们可以看到,一个LabVIEW控件由不同的可显示部件组成,比如上面的旋钮,就是由旋钮、单位标签、数字显示和梯度等几个部件组合而成,而其中每一个独立的部件都可以分别设置它的属性,比如颜色、字体等。1.1.3& 创建控件、常量、局部变量、引用、属性节点和方法节点创建控件、常量、局部变量、引用、属性节点和方法节点,是LabVIEW中极为常见的操作,使用得非常频繁。创建方法很多,分类介绍如下。1.创建控件LabVIEW的控件数量庞大,种类繁多,这极大地方便了GUI设计。控件从基本显示风格来区分,可分成“新式”、“古典式”和“系统”三大类。u&新式控件是三维显示风格,LabVIEW推荐使用此类控件。u&古典控件是平面显示风格,早期LabVIEW使用此类控件。u&系统显示风格,适用于编写Windows风格的应用程序。任何一种编程语言都具备处理复杂数据类型的能力,LabVIEW作为成熟的编程语言,自然也不例外。在各种编程语言中最常见的复杂数据类型为数组和记录(VB)或结构(C语言),LabVIEW中类似记录或结构的数据类型,称为“簇”。这只是一个称谓的区别,本质并无区别。在控件选板中包含数组和簇控件,但它们是作为控件形式出现的因此,它们的创建方式与数值控件相同。在控件选板选择数组和簇之后,前面板会出现数组和簇的容器,之后我们需要在数组或者簇中添加元素。对于数组,数组中的元素具有相同的属性,因此只需要选择需要的元素控件类型。建立数组容器后,右击容器内空白处,弹出控件选板,选择合适的控件。也可以在前面板放置控件,然后拖动到数组容器中,簇的建立方法类似,不过需要选择多种控件。控件隶属于特定的前面板,前面板往往包括多种不同类型的控件,创建控件有多种方法。u&在控件选板中选择相应的控件,然后拖动到前面板,程序框图中就会出现相应的接线端子。u&在程序框图函数接线端子上打开快捷菜单,选择“创建”à“输入控件”或“创建”à“显示控件”项。u&通过剪切板,复制一个或者多个控件。同常规的Windows程序一样,LabVIEW提供了剪切板功能,可以通过“编辑”菜单来完成,不过更方便的方法是使用快捷键。使用快捷键Ctrl+C,可以复制控件或控件集合。使用快捷键Ctrl+X,可以剪切控件或控件集合。使用快捷键Ctrl+V,可以粘贴控件或控件集合。u&用鼠标左键选择控件或控件集合,按下Ctrl键后拖动鼠标,可以直接生成新的控件或控件集合,这种方法称为克隆。u&在程序框图中,选择接线端子或者接线端子组,然后按下Ctrl键后拖动鼠标,可以直接在前面板上创建新的控件。u&从已经打开的别的VI前面板上,直接拖动控件或者控件集合到前面板。u&从已经打开的别的VI的程序框图中,直接拖动接线端子或者接线端子组,可以包括连线,这样可以直接复制程序,并自动创建相应控件。2.创建常量常量隶属于程序框图,在程序框图创建常量有以下几种方法。u&在函数面板上找到相应的函数,比如数值、字符串、文件路径、数组或簇,其中都包括常量。u&在接线端子的右键快捷菜单中,选择“创建”à“创建常量”项。u&拖动前面板上的控件或控件集合到程序框图,直接创建与控件类型对应的常量。u&在类似的常量存在的情况下,通过剪切板复制、剪切和粘贴来创建常量。u&在类似的常量存在的情况下,按下Ctrl键后用鼠标拖动该常量,通过克隆原来的常量来创建新的常量。u&在已经打开的其他VI中,直接拖动控件或者常量到程序框图。u&在局部变量的右键快捷菜单中,选择“创建”à“创建常量”项。u&在属性节点的右键快捷菜单中,选择“创建”à“创建常量”项。其中有些常量(比如数值常量)可以通过快捷菜单进一步选择相应的数据类型(比如U8、I16、DBL等)。3.创建局部变量局部变量的具体含义将在后续章节介绍,创建局部变量的几种方法如下。u&最基本的方法是在控件或者接线端子的右键快捷菜单上,选择“创建”à“局部变量”项。u&对于已经存在的局部变量,通过剪切板复制局部变量是不可行的,需要特别注意。LabVIEW虽然支持局部变量的复制、剪切和粘贴操作,但是粘贴后会创建一个新的控件及其局部变量。u&对于已经存在的局部变量,可以按下Ctrl键后用鼠标拖动局部变量来克隆。4.创建属性节点属性节点具体内容将在后续章节介绍。创建属性节点有如下方法。u&最基本的方法是使用前面板控件或程序框图中的接线端子的右键快捷菜单,选择“创建”à“属性节点”项。u&对于已经存在的属性节点,通过剪切板复制、粘贴的并非原来控件的属性节点,而是和原来数据类型对应的通用属性节点,暂时未指向任何控件。u&最简单的方法是按下Ctrl键后拖动用鼠标属性节点,创建一个新的属性节点。& 选择现有的属性节点,通过复制粘贴可以创建严格类型的通用属性节点。按下Ctrl键后用鼠标拖动该节点即可对其克隆,克隆操作不产生新的控件。5.创建控件的引用创建控件的引用有如下方法。u&最基本的方法是在控件或者接线端子的右键快捷菜单上,选择“创建”à“引用”项。u&对于已经存在的控件的引用,按下Ctrl键的同时用鼠标拖动控件引用来克隆。u&对于已经存在的引用,通过剪切板复制、粘贴的并非原来控件的引用,而是和原来控件类型一致的新的控件和控件的引用。6.创建控件的方法(中文版的帮助文件中称做调用节点,早期文档中译为“方法”)LabVIEW的控件与其他编程语言的控件一样具有属性和方法。创建控件的方法有以下几种方式。u&最基本的方法是在控件或者接线端子的右键快捷菜单中,选择“创建”à“方法”项。u&对于已经存在的控件方法,按下Ctrl键后拖动该方法来克隆。u&对于已经存在的控件方法,通过剪切板复制、粘贴的并非原来控件的方法,而是和原来控件类型一致的新的通用控件方法。& 选择现有的方法,通过复制、粘贴可以创建严格类型的通用方法。以上介绍了控件、常量、局部变量、属性节点、引用和方法的创建方法,其中都包括了按下Ctrl键拖动鼠标的方法 。这种方式称做“克隆”,克隆与Windows的复制、粘贴是不同的。Windows里的复制和粘贴往往创建新的控件,而克隆操作往往创建的是同一控件的局部变量或者属性节点等。控件和常量可以通过子VI的接线端子的快捷菜单,选择“创建”,然后选择“输入控件”、“显示控件”或者“常量”,来创建所需的输入控件、显示控件。利用这种方法,可以保证控件和子VI端子需要的类型一致,这是非常重要的功能。& 选择子VI的端子,通过快捷菜单选择“创建”项,来创建控件和常量。1.1.4& 创建自定义控件在选择控件之后,可以通过快捷菜单中的“表示法”项或者属性对话框来选择控件所代表的数据类型,一般都是一类相近的数据类型。比如数值类型中,U8、I8、U16和I16都是相近的数据类型。这样,在设计过程中想更改数据类型是很容易的。如果设计的数据类型和实际需要的数据类型有很大区别,这时可以直接选择快捷菜单中的“替换”项,把原来的控件替换成想要的新形式。在构造一个比较复杂的程序时,通常要定义一个复杂的数据结构来描述外部现象,而这个复杂的数据结构有可能贯穿整个程序的始终。一旦这个数据结构发生变化,将导致程序多处发生变化,这会给程序设计者造成极大困难,甚至导致整个程序设计的失败。最好的方法是定义一个统一的复杂数据类型(通常是用构造簇的方法来实现,让簇作为一种统一的数据类型,贯穿程序设计的始终)。通过这种方法,对数据结构的修改就能在程序中所有引用簇的地方自动更新。LabVIEW是通过把簇控件作为自定义控件来实现这个要求的。在控件的快捷菜单中,选择“高级”à“自定义”项,可以自定义任何控件。一个控件包括外观、数据类型、控件默认值等内容,可以自定义的是控件的哪些部分呢?如果自定义的仅仅是控件的外观,那意义不大,无非是为控件新增了特殊的显示效果。LabVIEW在这方面做得已经足够多了,很容易找到所需的控件。选择一个控件,打开快捷菜单并选择“自定义”项,弹出自定义控件编辑器,看看到底能自定义哪些部分。如图1-11所示,这是一个普通的数值控件自定义前面板,它与普通的前面板是有区别的。一般VI的前面板对应一个程序框图,而自定义控件面板没有对应程序框图,不允许编程。此外还可以看出,一个控件是由一些基本对象元素组合而成的,每一个元素都可以独立修改,如颜色、大小等。重新定义这些基本元素,就可以构造出新的符合自己特殊要求的控件。自定义控件有三种形式:输入控件、自定义类型和严格自定义类型,如图1-11所示。自定义控件的三种不同形式存在重要区别。图1-12分别调用了创建后的输入控件、自定义类型、严格自定义类型的属性对话框,我们可以发现,其属性对话框存在明显区别。输入控件、自定义类型、严格自定义类型的区别如下所述。u&输入控件保存在一个单独文件中,对于保存为输入控件方式的自定义控件,一旦在一个VI中调用它,则这个新生成的控件与原来的控件没有任何关系,可以自由地修改这个新控件的属性,如图1-12中左侧图所示。&图1-11& 自定义控件编辑器&图1-12& 输入控件、自定义、严格自定义属性对话框&自定义类型和严格自定义类型的自定义控件则与输入控件型不同,在一个VI中调用这两类自定义控件后,新生成的控件保持和文件中存储的自定义控件的链接关系。任何对文件中存储的自定义控件进行修改后,所有调用这个自定义控件的VI都会更新。这样就保证了一个精心设计的复杂数据类型在所有调用VI中保持同步更新。&自定义数据类型和严格自定义数据类型的区别在于控件数据类型保持一致的程度。对于严格定义的数据类型,在调用它的VI中,除了可以修改是否可见、是否启用之外,无法对控件进行任何其他修改,完全保证和存储在文件中的自定义控件的高度一致,如外观、代表的数据类型、数据类型的精度、数据类型的输入范围等。而自定义数据类型除了外观和代表的数据类型保持一致外,其他属性可以自由设置。图1-12中,中间的图为自定义数据类型,右侧的图为严格自定义类型。& 可以使用自定义类型或者严格自定义类型构造通用或者复杂的数据类型。&&
-----}

我要回帖

更多关于 labview调用子vi 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信