精通LabVIEW 8.x
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

第3章 创建程序的前面板

本章主要介绍编辑 LabVIEW 的前面板——LabVIEW 程序界面的方法和技巧,并以创建“数字滤波器”为例详细介绍编写LabVIEW前面板的方法。

本章主要内容包括:

编辑前面板对象

设置前面板对象的属性

前面板的修饰

实例:创建数字示波器

3.1 编辑前面板对象

前面板是LabVIEW的重要组成部分,是用LabVIEW编写的应用程序的界面。LabVIEW的各个版本一向很注重前面板(程序界面)的设计,LabVIEW 8.0也不例外。利用LabVIEW 8.0所提供的专门用于前面板设计的控制量和显示量,可以构造出功能强大且非常美观的程序界面。

LabVIEW 8.0所提供的专门用于前面板设计的控制量和显示量被分门别类地安排在控件模板中,当用户需要使用时可以根据对象的类别从各个子模板中选取。前面板的对象按照其类型可以分为数值型、布尔型、字符串型、数组型、簇型、图形型等多种类型,除了专门用于装饰用途的控件以外,多数控件本质的区别在于其代表的数据类型不同,因而各种控件的属性和用途互有差异。

下面我们分别以数值型控件、布尔型控件以及图形型控件为例,详细介绍用于前面板设计的控件的使用方法。

3.1.1 编辑数值型控件

在LabVIEW中,数值型控件用于数值型数据的控制和显示,位于控件模板中的Numeric(数值)子模板、Numeric Controls(数值控制量)子模板以及Numeric Indicators(数值显示量)子模板中,三个子模板分别如图3.1(1)、图3.1(2)和图3.1(3)所示。

图3.1 (1)LabVIEW 8.0控件模板中的数值子模板

图3.1 (2)LabVIEW 8.0控件模板中的数值控制量子模板

图3.1 (3)LabVIEW 8.0控件模板中的数值显示量子模板

提示:在控件模板中的Numeric子模板中既包含了数值型控制量也包含了数值型显示量,而在Numeric Controls子模板中只包含了数值型控制量,在Numeric Indicators子模板中只包含了数值型显示量。

在LabVIEW 8.0控件模板中的数值子模板中有各种用于操作数值型数据的控制量和显示量。它们以非常形象的文本框 、滑动杆 、拨码盘 、温度计 等来控制和显示数值型数据,利用这些控件可以构造出美观的程序界面。

下面的程序演示了数值型控件的使用方法,其前面板和后面板分别如图3.2 和图3.3所示。

图3.2 数值型控件演示程序的前面板

图3.3 数值型控件演示程序的后面板

在程序中用左边的数值型控制量控制右边的数值型显示量进行数据的显示。按“STOP”按钮将终止程序的运行。

技巧:当用户想要改变控件的大小时可以将鼠标移近控件,当控件上出现六个方框时,单击鼠标左键并拖动方框到适合的位置,最后松开鼠标左键,则控件被放大或缩小。操作的过程如图3.4所示。

图3.4 在LabVIEW中改变前面板控件大小的方法

试一试 Time Stamp控件的使用方法:

LabVIEW 8.0中,新增了一些功能强大的控件,在控件模板中的数值子模板中新增了Time Stamp控件,用于设定和显示日期和时间,下面介绍这个控件的使用方法。

① 新建一个VI

② 在控件模板中的数值子模板中分别选取 Time Stamp Control 控件(Controls/Modern/Numeric/Time Stamp Control)和 Time Stamp Indicator 控件(Controls/Modern/Numeric/Time Stamp Indicator),并放置在前面板上。

③ 用快捷键【Ctrl+E】切换到后面板,连接Time Stamp ControlTime Stamp Indicator的数据端口,并在函数模板中的Execution Control(程序执行控制)子模板中选择 While LoopWhile 循环),将 Time Stamp Control Time Stamp Indicator两个控件置于While循环的图框中。程序的后面板如图3.5所示。

图3.5 Time Stamp控件演示程序的后面板

④ 运行程序,并改变 Time Stamp Control 的日期和时间,可以发现 Time Stamp Indicator的日期和时间也相应发生改变。单击Time Stamp Control右侧的Time/Date Browse Button(时间/日期浏览按钮),可以打开设置时间/日期窗口,如图3.6所示,在这里用户可以选择时间和日期,单击Set Time to Now,将自动选择计算机当前的时间和日期。单击OK,Time Stamp Control控件将显示用时间/日期窗口设置的时间和日期。

图3.6 设置时间/日期窗口

3.1.2 编辑布尔型控件

在LabVIEW中,布尔型控件用于布尔型数据的控制和显示。作为控制量,布尔型控件主要表现为一些开关 和按钮,用来改变布尔型控制量的状态;作为显示量,布尔型控件则主要表现为如LED 等用于显示布尔量状态的控件。

LabVIEW中的布尔型控件主要安排在控件模板中的Boolean(布尔)子模板中,如图3.7所示。

图3.7 LabVIEW 8.0 控件模板中的布尔子模板

下面用一个简单的程序来演示布尔型控件的使用方法,步骤如下。

(1)从控件模板的布尔子模板中选取两个开关(开关1和开关2)、两个按钮(按钮1和按钮2)以及两个LED(LED1和LED2)分别放置于前面板上的适当位置,开关用于控制按钮的位置和LED的显示状态。合理排布开关、按钮以及LED的位置,构成程序的前面板,如图3.8所示。

图3.8 布尔型控件演示程序的前面板

(2)切换到后面板,分别在按钮1和按钮2上单击鼠标右键,从弹出的快捷菜单中选择Change to Indicator,将其转换为显示量,如图3.9所示。

图3.9 将按钮由控制量变为显示量

(3)用连线工具分别将开关1的数据输出端口和按钮1以及LED1的数据输入端口相连,将开关2的数据输出端口和按钮2以及LED2的数据输入端口相连,如图3.10所示。

图3.10 用连线工具连线

(4)从Functions(函数)子模板中的Execution Control(执行控制)子模板中选取While Loop(While循环)控件,在后面板上拖动并出现一个图框,使得当前、后面板中所有控件都位于图框中。

程序的后面板如图3.11所示。在程序中,用开关1和开关2来控制按钮1和按钮2的状态,并用LED来显示它们状态的变化。STOP按钮用于中止程序的运行。

图3.11 布尔型控件演示程序的后面板

提示:前面板中的Controls(控制量)和Indicators(显示量)是可以相互转换的。例如,如果在编程过程中需要将一个控制量变成显示量,可以在控制量上单击鼠标右键,从弹出的快捷菜单中选择Change to Indicator(转换为显示量),相反,也可以将显示量变为控制量。

技巧:前面板上的每一个Control(控制量)和Indicator(显示量)在后面板上都有一个对应的图标,可以通过图标上面数据端口的位置来区分这个对象到底是控制量还是显示量。如果数据端口在图标的右侧,如 ,则控件为控制量;如果数据端口在图标的左侧,如 ,则控件为显示量。

技巧:LabVIEW中的布尔型控制量有一个属性叫做Mechanical Action(机械动作),修改这个属性可以控制开关的触发条件,例如可以控制是在按下按钮时触发动作还是在抬起按钮时触发动作。在编写程序的时候,切换到程序的前面板,在布尔型控制量上面单击鼠标右键,从弹出的快捷菜单中选择Mechanical Action,可以弹出如图3.12所示的六个图形选项,按照从左向右、自上而下的顺序,它们的含义分别为:

图3.12 控制布尔型控制量的机械动作

当按下按钮时触发

当松开按钮时触发

当按钮处于按下状态时触发

按下按钮后以“点动”方式触发

松开按钮时以“点动”方式触发

按下按钮时触发,松开按钮前结束

在LabVIEW的程序中,布尔型控制量往往用于切换程序的运行状态或者用于控制程序的流程,而布尔型显示量则用于显示程序的运行状态。

3.1.3 编辑图形型控件

LabVIEW中的图形型控件主要用于LabVIEW程序中数据的形象化显示,例如可以将程序中的数据流在形如示波器窗口的控件中显示,也可以利用图形型控件来显示图片和图像。

在LabVIEW 8.0中,用于图形显示的控件主要位于控件模板中的Graph Indicators(图形显示量)子模板以及Graph(图形)子模板中。这两个子模板分别如图3.13和图3.14所示。

图3.13 LabVIEW中的图形显示子模板

图3.14 LabVIEW中的图形子模板

这些图形型控件主要包括Waveform Chart(波形图表)、Waveform Graph(波形图)、XY Graph(XY两坐标图)以及Intensity Graph(密度图)等。

下面以Waveform Chart为例说明编辑图形型的方法和技巧,步骤如下。

(1)从控件模板中的Graph Indicators子模板中选取Waveform Chart控件,放置在前面板上。

(2)切换到后面板,从Execution Control子模板中选取While Loop控件,并在后面板上勾勒出一个图框,如图3.15所示。

图3.15 在后面板构建While循环图框

(3)从函数模板中的Numeric(数值)子模板中选取除法控件 和正弦函数控件,并置于While Loop的图框中,将除法控件的被除数数据端口与循环变量i相连,在除数数据端口单击鼠标右键选择Create Constant,并在出现的方框内键入数字10,将除法控件的输出数据端口与正弦函数的输入数据端口相连,将正弦函数的输出数据端口与Waveform Chart控件的输入数据端口相连。上面的操作将正弦函数产生的正弦数据送给Waveform Chart控件,以图形的方式显示这些数据,如图3.16所示。

图3.16 产生正弦数据并用Waveform Chart控件显示

(4)为了放慢数据显示的速度,以便用户能够看清正弦波形,在后面板的循环中加入延时Express VI——Time Delay Express VI,在弹出的【设置延时时间】对话框中输入0.1,表明每次循环延时0.1 秒。如果想要改变延时的时间可以用鼠标双击Time Delay Express VI的图标,这时会重新弹出【设置延时时间】对话框,在对话框中输入相应的时间即可。

程序的前面板和后面板分别如图3.17和图3.18所示。

图3.17 图形型控件演示程序的前面板

图3.18 图形型控件演示程序的后面板

图形型显示控件是LabVIEW进行波形、图形、图像显示的重要手段和工具,是将数据形象地显示给用户的重要方式,因而读者应当重点学习和掌握。

试一试 3D Curve Graph控件的使用方法如下:

3D Curve GraphLabVIEW 8.0中一种非常重要的用于显示三维曲线的控件。下面介绍这种控件的使用方法。

① 新建一个VI

② 在控件模板中的图形子模板中选取 3D Curve Graph 控件(Controls/Modern/Graph/3D Curve Graph),并放置在前面板上。

③ 用快捷键【Ctrl+E】快速切换到程序的后面板,并从函数模板中的数值子模板中选取除法 和正弦函数 两个控件,在除法控件的除数数据端口单击鼠标右键,从弹出的快捷菜单中选择Create Constant,并在出现的方框内键入数字5,将除法控件的输出数据端口与正弦函数控件的输入数据端口相连。

④ 从函数模板中的Structure(结构)子模板中选取For LoopFor循环),并用For Loop将当前后面板上所有对象囊括在它的图框中,在For Loop左上角的循环次数“N”数据端口上单击鼠标右键,从弹出的快捷菜单中选择 Create Constant,并在出现的方框中键入数字100,表明进行100次循环。将循环变量i与除法控件的被除数数据端口相连接,用以作为产生正弦波形数据的自变量。

⑤ 将正弦函数的输出数据端口与3D Curve控件的z vector数据端口相连,将生成的正弦数据赋值给3D Curve控件的z坐标,将除法控件的输出数据端口分别与3D Curve控件的x vectory vector两个数据端口相连。

⑥ 运行程序,运行结果如图3.19所示,在程序的前面板显示了生成的正弦曲线的三维效果图。程序的后面板如图3.20所示。

图3.19 3D Curve Graph控件演示程序的前面板

图3.20 3D Curve Graph控件演示程序的后面板

提示:一般而言,在前面板中的对象在后面板都会有相应的图标标志,用以在后面板操作前面板中的对象,但是后面板中的图标有两种形式,一种是形象的图标,另一种是仅仅表示对象数据类型的方框。前者更为形象地表明了对象的类别,而后者则显得更加简洁。在对象上单击鼠标右键,从弹出的快捷菜单上选择View As Icon,可以切换两种显示方式。

例如前面板的数值型对象Tank,在后面板上的图标标志是,而切换为方框后,显示为

3.2 设置前面板对象的属性

上一节主要介绍了编辑前面板控件的方法,在用LabVIEW进行程序设计的过程中,对前面板的设计主要是编辑前面板控件和设置前面板控件的属性。为了更好地操作前面板的控件,设置其属性是非常必要的,这一节将主要介绍设置前面板控件属性的方法。

不同类型的前面板控件有着不同的属性,下面分别介绍设置数值型控件、文本型控件、布尔型控件以及图形显示控件的方法。

3.2.1 设置数值型控件的属性

LabVIEW 8.0中的数值型控件(位于控件模板中的Numeric子模板中)有着许多公有属性,每个控件又有自己独特的属性,这里只能对控件的公有属性作比较详细的介绍。

下面以数值型控件——Tank为例介绍数值型控件的常用属性及其设置方法。

数值型控件的常用属性有:

● Label:标签,用于标志控件的类型与名称;

● Caption:标题,通常和Label相同;

● Digital Display:数字显示,以数字的方式显示控件所表达的数据。

图3.21显示了Tank控件的Label、Caption、Digital Display等属性。

图3.21 Tank控件的基本属性

在前面板控件的图标上单击鼠标右键,弹出如图3.22所示的快捷菜单,从菜单中可以通过选择Label、Caption、Digital Display等可以切换是否显示控件的这些属性,另外,通过工具模板中的文本按钮 来修改Label和Caption的内容。

图3.22 数值型控件 (以Tank为例)的属性快捷菜单

数值型控件的其他属性可以通过它的【属性】对话框进行设置,在控件的图标上单击鼠标右键,并从弹出的快捷菜单中选择Properties(属性),可以打开如图3.23所示的【属性】对话框。对话框分为四个选项页,分别是Appearance(外观)、Data Range(数据范围)、Scale(刻度)以及Format and Precision(格式与精度),四个选项页分别如图3.23(1)、图3.23(2)、图3.23(3)和图3.23(4)所示。

图3.23 (1)数值型控件Tank的属性选项页1

图3.23 (2)数值型控件Tank的属性选项页2

图3.23 (3)数值型控件Tank的属性选项页3

图3.23 (4)数值型控件Tank的属性选项页4

在Appearance选项页中,用户可以设置与控件外观有关的属性。用户可以修改控件的Label和Caption属性以及设置其是否可见;可以设置控件的Enabled State(激活状态),以决定控件是否可以被程序调用;在Appearance选项页中用户也可以设置控件的颜色和风格。

在Data Range选项页中,用户可以设置数值型控件的数据范围以及默认值。

在Scale选项页中,用户可以设置数值型控件的刻度范围及其风格。可以选择的刻度风格类型如图3.24所示。

图3.24 用户可以选择的数值型控件刻度风格

与Data Range、Scale选项页一样,Format and Precision选项也是数值型控件所特有的属性。在Format and Precision选项页中用户可以设置控件的数据显示格式以及精度。该选项页包含两种编辑模式,分别是(Default editing mode)默认的编辑模式和(Advanced editing mode)高级编辑模式,在高级编辑模式下,用户可以对控件的格式与精度做更为复杂的设置。

LabVIEW 8.0为用户提供了丰富、形象而且功能强大的数值型控件,用于数值型数据的控制和显示,合理地设置这些控件的属性是使用它们进行前面板设计的有力保证。

3.2.2 设置文本型控件的属性

LabVIEW中的文本型控件主要负责字符串等文本类型数据的控制和显示,这些控件位于LabVIEW控件模板中的String and Path(字符串与路径)子模板、Text Controls(文本控制量)子模板以及Text Indicators(文本显示量)子模板,三个子模板分别如图3.25(1)、图3.25(2)和图3.25(3)所示。

图3.25 (1)LabVIEW 8.0中的字符串与路径子模板

图3.25 (2)LabVIEW 8.0中的文本控制量子模板

图3.25 (3)LabVIEW 8.0中的文本显示量子模板

LabVIEW 8.0中的文本型控件可以分为三种类型,分别是:用于输入字符串的控制与显示控件,用于选择字符串的控制与显示控件,以及用于文件路径的控制与显示控件。下面分别详细说明设置三种类型文本型控件的方法。

String Control和String Indicator是最具代表性的用于输入字符串的控件,在LabVIEW的前面板中它们的图标分别为。这两个控件的属性可以通过其【属性】对话框进行设置。控件String Control和String Indicator的【属性】对话框如图3.26所示。

图3.26 String Control和String Indicator控件的【属性】对话框

String Control和String Indicator的【属性】对话框由Appearance选项页,Documentation选项页等组成。在Appearance选项页,与上一节介绍的数值型控件的【属性】对话框不同的是,在文本型控件的【属性】对话框中,用户不仅可以设置Label和Caption等属性,而且可以设置文本的显示方式。

String Control和String Indicator控件中的文本可以以四种方式进行显示,分别为Normal(正常)、Backslash codes(反斜线码)、Password(密码)以及Hex(十六进制格式)。其中Backslash codes表示文本框中的字符串以反斜线码的方式显示,例如“\n”代表换行,“\r”代表回车,而“\b”代表退格;Password表示以密码方式显示文本,即不显示文本内容,而代之以“*”;Hex表示以十六进制数来表示字符串。

在String Control和String Indicator控件的【属性】对话框中,如果复选“Show scroll bar”,则当文本框中的字符串不只一行时会显示滚动条;如果复选“Limit to single line”,那么将限制用户在单行输入字符串,而不能回车换行;如果复选“Update value while typing”,那么文本框的值会随用户键入的字符而实时改变,不会等到用户键入回车后才改变。

文本型控件的另一种类型是用于选择字符串的控制,主要包括Ring 、Menu Ring 和Combo Box。与输入字符串的文本控件不同,这类控件需要预先设定一些选项,用户在使用时可以从中选择一项作为控件的当前值。

这类控件的设置同样可以通过其【属性】对话框来完成,下面以控件Menu Ring为例介绍设置这类控件属性的方法。

控件Menu Ring的【属性】对话框如图3.27所示,其主要选项页分别如图3.27(1)、图3.27(2)、图3.27(3)、图3.27(4)、图3.27(5)和图3.27(6)所示。控件的前三个选项页——Appearance、Data Range以及Format and Precision与数值型控件的相应选项页相似,设置方法也类似,这里不再赘述,这里主要介绍第四个选项页——Edit Items。

图3.27 (1)文本型控件Ring的属性选项页1

图3.27 (2)文本型控件Ring的属性选项页2

图3.27 (3)文本型控件Ring的属性选项页3

图3.27 (4)文本型控件Ring的属性选项页4

图3.27 (5)文本型控件Ring的属性选项页5

图3.27 (6)文本型控件Ring的属性选项页6

在Edit Items选项页中,用户可以设定该控件中能够显示的文本选项。在Labels中填入相应的文本选项,单击“Insert”便可以加入这一选项,同时Labels的右边显示当前选项的选项值。选择某一选项,单击“Delete”可以删除此选项,单击“Move Up”可以将该选项向上移动,单击“Move Down”将该选项向下移动。

试一试 Menu Ring控件的使用方法如下:

Menu RingLabVIEW中常用的用于文本选择与显示的控件,下面介绍这种控件的使用方法。

① 新建一个VI

② 在控件模板中的 Text Controls 子模板中选取 Menu Ring 控件(Express/Text Controls/Menu Ring),并放置在前面板上。

③ 在Menu Ring控件上单击鼠标右键,从弹出的快捷菜单中选择Properties,弹出控件的【属性】对话框,并切换到Edit Items选项页。

④ 依次在Labels一项填入LabVIEW 6i、LabVIEW 6.1、LabVIEW 7 Express、LabVIEW 7.1以及LabVIEW 8.0并单击“Insert”按钮,加入上述四个选项,并单击OK,推出【属性】对话框。

⑤ 切换到程序的后面板,在Menu Ring控件的数据输出端口单击鼠标右键,选择Create Indicator,建立一个数值型显示量,用以显示Menu Ring控件的选项值,将其Label改为“选项值”。

⑥ 在函数模板中的Execution Control子模板中选择While Loop,并将当前后面板上的所有对象囊括在While Loop所构成的图框中。

⑦ 运行程序,当用户选择Menu Ring控件中的选项时,“选项值”文本框中将显示当前选项的选项值。程序的运行结果(前面板)如图3.28所示,程序的框图(后面板)如图3.29所示。

图3.28 Menu Ring演示程序的前面板和运行结果

图3.29 Menu Ring演示程序的后面板

用于文件路径的控制与显示控件是LabVIEW中一种特殊的文本型控件,它将文件的路径作为字符串在程序中进行传递和运算。

LabVIEW 8.0中用于文件路径控制和显示的控件包括File Path Control(文件路径控制量) 和File Path Indicator(文件路径显示量)。它们的属性可以通过如图3.30(1)、图3.30(2)、图3.30(3)和图3.30(4)所示的【属性】对话框来设置。图3.30(1)显示了File Path Control和File Path Indicator控件的Appearance选项页,在这个选项页中用户可以设置与控件外观相关的一些属性;图3.30(2)显示了File Path Control和File Path Indicator控件的Browse Options选项页,在这里用户可以设计打开文件路径的参数、几种预制的模式选择以及起始路径。

在用LabVIEW对文件操作的过程中,要经常用到File Path Control和File Path Indicator这两个控件,这将在第8章中详细介绍。

图3.30 (1)文本型控件Path的属性选项页1

图3.30 (2)文本型控件Path的属性选项页2

图3.30 (3)文本型控件Path的属性选项页3

图3.30 (4)文本型控件Path的属性选项页4

3.2.3 设置布尔型控件的属性

布尔型控件是LabVIEW程序中运用得相对较多的控件,它一般作为控制程序运行的开关或者作为检测程序运行状态的LED等。

布尔型控件需要设置的选项相对较少,设置方法也相对简单,通过其【属性】对话框可以对其属性进行设置。

布尔型控件的【属性】对话框有两个常用的选项页,分别为Appearance和Operation,分别如图3.31(1)和图3.31(2)所示。在Appearance选项页中,用户可以调整开关或按钮的颜色等外观参数。Operation是布尔型控件所特有的属性页,在这里用户可以设定按钮或开关的机械动作类型,对每种动作类型有相应的说明,并可以预览开关的运动效果以及开关的状态。

图3.31 (1)布尔型控件的Appearance属性选项页

图3.31 (2)布尔型控件的Operation属性选项页

技巧:布尔型控件可以用文字的方式在控件上显示其状态,例如没有显示开关状态的按钮为 ,而显示了开关状态的按钮为 。如果要显示开关的状态,只需要在布尔型控件的 Appearance 选项页中复选“Show Boolean Text”即可。

3.2.4 设置图形显示控件的属性

图形显示控件是LabVIEW中相对比较复杂的专门用于数据显示的控件,如Waveform Chart和Waveform Graph。这类控件的属性相对前面的数值型控件、文本型控件和布尔型控件而言更加繁杂,其使用方法在第7章中将有更为详细的介绍,这里只对其常用的一些属性及其设置方法做相对简略的说明。

如同前面三种控件,图形型控件的属性可以通过其【属性】对话框进行设置。下面以图形型控件Waveform Graph为例,介绍设置图形型控件属性的方法。

Waveform Graph控件【属性】对话框的选项页分别如图3.32(1)、图3.32(2)、图3.32(3)、图3.32(4)、图3.32(5)和图3.32(6)所示,分别为Appearance、Format and Precision、Plots、Scales等。

图3.32 (1)Waveform Graph的属性选项页1

图3.32 (2)Waveform Graph的属性选项页2

图3.32 (3)Waveform Graph的属性选项页3

图3.32 (4)Waveform Graph的属性选项页4

图3.32 (5)Waveform Graph的属性选项页5

图3.32 (6)Waveform Graph的属性选项页6

其中,在Appearance属性页中,用户可以设定是否需要显示控件的一些外观参数选项,如Label、Caption、Graph Palette(图形模板)、Plot Legend(绘图图例)、Scale Legend(刻度图例)等。Format and Precision选项页可以在Default editing mode和Advanced editing mode之间进行切换,用于设置图形型控件所显示的数据的格式与精度。Plots选项页用于设置图形型控件绘图时需要用到的一些参数,包括数据点的表示方法、曲线的线型及其颜色。在Scales选项页中,用户可以设置图形型控件有关标尺的属性,例如是否显示标尺,标尺的风格、颜色以及栅格的颜色和风格等。

提示:在一般情况下,LabVIEW 8.0中几乎所有控件的【属性】对话框中都会有 Documentation 选项页,在该选项页中用户可以设置对控件的注释以及提示。当用户将鼠标指向前面板上的控件时,程序将会显示该提示,例如在前面板 Knob 控件的【属性】对话框中 Documentation 选项页中的 Tip 栏中填入“LabVIEW 8.0 的提示”几个字符,那么当将鼠标指向该控件时,将会显示如下提示:

3.3 前面板的修饰

作为一种基于图形模式的编程语言,LabVIEW在图形界面的设计上有着得天独厚的优势,可以设计出漂亮、大方而且方便、易用的程序界面(即程序的前面板)。为了更好地进行前面板的设计,LabVIEW提供了丰富的修饰前面板的方法以及专门用于装饰前面板的控件,这一节将主要介绍修饰前面板的方法和技巧。

3.3.1 设置前面板对象的颜色以及文字的风格

前景色和背景色是前面板对象的两个重要属性,合理地搭配对象的前景色和背景色会使用户的程序增色不少。下面具体介绍设置程序前面板对象前景色和背景色的方法。

首先选取工具模板中的“设置颜色工具”,如果需要设置背景色,则用鼠标单击“设置颜色工具”中的背景色图标,这时在前面板上将出现【设置颜色】对话框,如图3.33所示。

图3.33 【设置颜色】对话框

从中选取适当的颜色,然后单击程序的后面板,则后面板的背景色被设定为指定的颜色。

同样的方法,用鼠标单击工具模板的设置前景色图标,在出现【设置颜色】对话框后,选择适当的颜色,并单击前面板上的控件,则相应控件被设置为用于指定的颜色。

在LabVIEW中,可以设置前面板文本对象的字体、颜色以及其他风格特征。这些可以通过LabVIEW的工具栏中的字体按钮 进行设置。单击 按钮,将弹出用于设置字体的下拉菜单,在菜单中,用户可以选择文字的字体、颜色、大小和风格。用户也可以在字体按钮的下拉菜单中选择Font Dialog(字体对话框)来设置字体的这些常用属性。LabVIEW 8.0的【字体】对话框如图3.34所示,在这个对话框中用于可以设置字体的几乎所有属性。

图3.34 LabVIEW 8.0的字体对话框

3.3.2 设置多个对象的位置关系和大小

在LabVIEW程序中,设置多个对象的相对位置关系,以及对象的大小是布置和修饰前面板过程中一件非常重要的工作。在LabVIEW 8.0中,提供了专门用于调整多个对象位置关系以及设置对象大小的工具,它们位于LabVIEW的工具栏上。

LabVIEW所提供的用于修改多个对象位置关系的工具如图3.35所示。这两种工具分别用于调整多个对象的对齐关系以及调整对象之间的距离。

图3.35 LabVIEW 8.0中用于设置多个对象之间位置关系的工具

在LabVIEW的工具栏上有其他一些用于设置对象属性的工具,例如设置对象大小的工具和群组、锁定以及调整对象前、后位置的工具,如图3.36所示。

图3.36 LabVIEW 8.0中用于调整对象大小的工具和群组工具

利用设置对象大小的工具,用户可以按照一定的规则调整对象的尺寸,也可以用按钮 来指定控件的高度和宽度,进而设置对象的大小。群组工具可以将一系列对象设置为一组以固定其相对位置关系,也可以锁定对象,以免在编辑过程中对象被移动。利用LabVIEW提供的移动对象前、后相对位置的工具可以改变对象的前后顺序,以决定是否遮挡住某些对象。例如用“Move Forward”可以将对象向前移动;用“Move Backward”可以将对象向后移动,用“Move to Front”可以将对象移动到最前方。

3.3.3 用修饰控件装饰

LabVIEW 8.0中用于修饰前面板的控件位于控件模板中的Decorations(修饰子模板)中。它包括一系列线、箭头、方形、圆形、三角形等形状的修饰模块,这些模块如同一些搭建美观的程序界面的积木,合理组织、搭配这些模块可以构造出绚丽的程序界面。LabVIEW 8.0的Decorations子模板如图3.37所示。

图3.37 LabVIEW 8.0的修饰子模板

提示:LabVIEW 8.0中,Decorations子模板中的各种控件只有其前面板的图形,而没有在后面板上与之相对应的图标,这些控件的主要功能就是进行界面的修饰,是 LabVIEW 中最为特殊的前面板控件。将这些控件进行适当的组合,可以设计出非常美观的程序界面。

下面用一个实例来说明用装饰控件修饰前面板的方法,步骤如下:

(1)首先,新建一个VI。打开程序的前面板,并从控件模板的Decorations子模板中选取Horizontal Button Box(水平按钮方框)控件,拖动出一个方框,并将其放置在前面板的适当位置。

(2)选取Thick Lowered Box(深凹陷方框)控件,置于Horizontal Button Box控件内,最后选取Raised Box(上升方框)控件放置在Thick Lowered Box控件内部,完成该VI的修饰工作。

此时的程序前面板如图3.38所示。

图3.38 修饰过的程序前面板

这时,程序的前面板已经有了一些立体的装饰效果,只是还没有配以颜色,略显不足。下面为前面板的装饰控件配置颜色。

技巧:有两种方法可以用来为前面板对象设置颜色。第一种方法是首先打开LabVIEW 8.0的工具模板,从工具模板中选择设置颜色工具 的背景色或前景色图标,在打开的如图3.39所示的【颜色设置】对话框中选择合适的颜色,然后单击想要设置颜色的目标对象。另外一种方法是首先单击设置颜色工具中的取色笔图标,然后在需要设置颜色的控件上单击鼠标右键,这时会弹出【颜色设置】对话框,从中选择一种颜色后,前面板的对象将会被自动赋予该颜色。在使用时,用户可以根据习惯选择一种适合自己的设置控件颜色的方式

图3.39 LabVIEW 8.0的【颜色设置】对话框

(3)选择工具模板中的设置颜色工具,为修饰控件设置颜色。将前面板的背景色设置为淡蓝色,如图3.40所示。

图3.40 设置背景颜色

(4)用同样的方法设置程序前面板的前景色。将Horizontal Button Box和Thick Lowered Box的颜色设置为蓝色,将Raised Box的颜色设置为黄色,此时程序的前面板如图3.41所示,可以发现经过装饰控件的修饰,程序的前面板增色不少。

图3.41 设置颜色后的程序前面板

(5)切换到程序的后面板,从函数模板的Time and Dialog(时间和对话框)子模板中选取Get Time/Date In Seconds(获取时间/日期),并放置在后面板的适当位置,在Get Time/Date In Seconds的数据输出端口单击鼠标右键,从弹出的快捷菜单中选取Create Indicator,并将生成的Indicator的Label更名为“当前时间”。从函数模板中的Execution Control子模板中选取While Loop控件,并将当前后面板中的所有对象置于其中,如图3.42所示。

图3.42 显示“当前时间”程序的后面板

(6)切换到前面板,将显示时间的文本框移动到Raised Box的中央,并将程序中止按钮“STOP”的颜色和“当前时间”文本框的颜色设置为淡蓝色。并将“当前时间”的文字字体设置为“隶书”,如图3.43所示。

图3.43 显示“当前时间”程序的前面板

运行程序,在“当前时间”的文本框中将显示系统的当前时间,程序的运行结果如图3.43所示。

修饰与包装是程序设计不可或缺的一个重要工作,在LabVIEW中也是如此,LabVIEW 8.0凭借它进行界面设计与修饰的强大工具和优势,可以设计出美观的程序界面。

3.4 实例——创建数字示波器

这一节将以创建“数字示波器”为例,总结和加深LabVIEW前面板设计的方法,步骤如下。

(1)首先新建一个VI,用工具模板中的设置颜色工具将背景色设置成浅绿色。从Decoration子模板中选取Vertical Smooth Box(垂直光滑方框),拖动出一个方框,并放置在前面板的适当位置,选取Recessed Box控件,并置于Vertical Smooth Box中。分别将这两个控件的颜色设置为橘黄色和黄色,如图3.44所示。

图3.44 用修饰控件修饰后的前面板

(2)在控件模板中的Graph Indicator子模板中选择Waveform Chart控件,放置在Recessed Box的中央,并适当调整其大小使其适合Recessed Box的方框,将其颜色设置为橘黄色。Waveform Chart控件是“数字示波器”的示波器窗口,也将是“数字示波器”这个实例的主角。修改后的程序前面板如图3.45所示。

图3.45 添加“示波器”窗口

(3)切换到后面板,从函数模板中的Analysis子模板中选择Waveform Generation子模板,并从中选取Formula Waveform.vi,放置在后面板的适当位置,在Formula Waveform.vi的frequency和amplitude两个输入数据端口单击鼠标右键,分别从弹出的快捷菜单中选择Create Control。在formula数据端口单击鼠标右键,选择Create Constant,并在出现的方框内填写如下公式:sin(w*t)+cos(2*w*t)^2。将Formula Waveform.vi的数据输出端口与Waveform Chart的数据输入端口相连,将由公式sin(w*t)+cos(2*w*t)^2产生的波形数据传递给Waveform Chart进行显示,构成检验“数字示波器”是否可用的测试信号。

(4)从函数模板的Execution Control子模板中选取While Loop控件,将当前后面板中的所有控件置于While Loop的方框中,让示波器循环显示波形。最终,程序的后面板如图3.46所示。

图3.46 “数字示波器”程序的后面板

(5)切换到前面板,将更改信号频率和幅值的数值型控件,以及中止程序运行的按钮安排到前面板的适当位置。在工具模板中选择标签工具,在Waveform Chart——“示波器”控件的上方适当位置单击鼠标,键入“数字示波器”,并将其字体更改为隶书、字号改为36号,颜色设置为黑色。

最终,程序的前面板如图3.47所示。

图3.47 “数字示波器”程序的前面板

运行程序,在示波器中将显示按照公式sin(w*t)+cos(2*w*t)^2计算出的波形,改变波形的频率和幅值,示波器中的波形将随之发生相应的改变。如果用户需要在示波器中显示其他类型的波形,只要编辑Formula Waveform.vi的formula数据端口中的公式即可。

程序的运行结果如图3.48所示。

图3.48 “数字示波器”程序的运行结果

提示:如果程序庞大,前面板非常复杂,仅在前面板窗口中很难全部显示所有的前面板对象,查找某一个前面板对象也非常不方便,那么可以利用LabVIEW 8.0提供的Navigation Window(导航窗口)。在Windows菜单中选择Show Navigation Window可以打开导航窗口,上面一个实例中前面板的导航窗口如图3.49所示。单击导航窗口中的适当位置,LabVIEW可以自动将前面板中指定的位置移动到前面板的中心,这样可以快速查看前面板的所有控件与所有区域

图3.49 利用导航窗口辅助前面板设计

3.5 本章小结

这一章主要介绍了LabVIEW前面板设计的方法。主要包括编辑前面板对象、设置前面板对象的属性以及修饰前面板对象的方法。LabVIEW的前面板是LabVIEW应用程序的外观和程序界面,是人机交互的窗口,美观、大方的前面板将为LabVIEW程序增色。美观的界面设计也会给优秀的LabVIEW程序锦上添花。

前面板的设计是LabVIEW程序设计的重要环节,掌握其设计方法是迈入LabVIEW程序设计光辉殿堂的第一步,因而对于学习LabVIEW非常重要,希望读者能够认真体会。