LabVIEW虚拟仪器项目开发与实践
上QQ阅读APP看书,第一时间看更新

2.1 控件选择

控件是构成前面板的核心元件,LabVIEW提供的控件位于前面板控件选板上(在前面板上右击即可弹出控件选板)。LabVIEW支持的基本控件如表2-1所示,主要包括数值输入控件(如滑动杆和旋钮)、数值显示控件(如仪表和量表、图表)、布尔控件(如按钮和开关)、字符串、路径、数组、簇、列表框、树形控件、表格、下拉列表控件、枚举控件和容器控件等。

表2-1 LabVIEW支持的基本控件和显示控件

续表

续表

开发人员从控件面板中选择需要的控件放入前面板来构建用户界面,并可通过被选控件的右键菜单中的“变更为输入控件”(Change to Control)和“变更为显示控件”(Change to Indicator)选项切换其输入或输出属性。例如,若选择了一个数值输入框放入前面板,则可以通过其右键菜单中的“变更为显示控件”选项,将输入控件的属性变更为显示控件。变更为显示控件后,输入框只能用于进行数据显示,不接受用户的任何输入。

进行前面板设计的第一步就是按照以下原则选择用于构建用户界面的控件:

(1)所选控件构成的用户界面应能兼容目标显示设备和目标操作系统。

(2)结合所开发应用的内容,所选输入控件应容易理解、便于操作。

(3)所选输出显示控件应能直观、有效的向用户表达相关数据。

(4)控件所代表的数据类型应能兼顾VI进行数据处理所需的范围、精度和效率。

(5)控件数据类型对应的操作应能满足程序数据处理的要求。

大多数的LabVIEW基本控件有传统(Classic)、现代(Modern)和系统(System)三种版本。原则上讲,不同版本的控件只是外观不同,可根据所开发应用使用的场合选用不同版本。若因某种原因(如为了兼容同一台机器上另外一个旧版本的程序),开发的VI必须运行在设置为16色或256色的显示器上,就可以选择传统版本的控件。现代版本的控件相对于传统版本控件对显示器的色彩设置有较高的要求(至少16位彩色),使用现代版本控件设计的VI前面板在较低配置的显示器上显示会比较难看。反过来说,如果必须兼容不同色彩的显示设置,那么选择传统版本的控件较为稳妥。另外,如果用户对传统风格的界面相对比较熟悉,或认为传统风格的界面比较美观,也可以选用传统版本的控件。

系统版本的控件按照用户对操作系统的色彩设置来显示,一般用来专门设计对话框。系统版本的控件会自动匹配其父窗体的颜色。例如,父窗体的色彩为白色,则在该窗体上的系统版本控件会自动与白色背景匹配,实现较好的显示效果。系统版本控件的外观依赖VI所运行的平台。当VI在不同的系统上运行时,系统版本控件的显示会自动进行调整,与所运行操作系统的标准对话框进行匹配。

除了外观,控件选用的另一个重要原则就是其所代表的数据类型和该类型对应的操作(LabVIEW所支持的数据类型和数据操作将在第3章详细讲解)。选用控件所代表的数据类型应能兼顾VI进行数据处理所需的范围、精度和效率。然而这个看似简单的原则在实际设计过程中并不那么容易执行。没有哪个用户“需要解决电流采集问题”时会说“我需要解决单精度浮点类型电压量的采集问题”这样的话。将用户需求抽象为合适的类型数据,为代表实际事物的数据选择适当精度,并合理使用计算机资源,确定高效的数据类型是设计人员的责任,更是一门艺术。除了控件所代表的数据类型外,关注数据类型对应的操作也非常重要。例如,在LabVIEW中选择了数值类型,相应的也就选定了对应数值类型的加、减、乘、除、数据格式转换等操作,对应的数据类型操作手段越丰富,程序设计越快速灵活。

基于需求分析决定了要使用的控件后,就可以从控件箱中将所选控件拖放至前面板中,开始着手前面板设计。几乎所有被拖放至前面板的控件都有标签(Label)、标题(Caption)、可见状态(Visible)、使能状态(Enable State)、大小(Size)和颜色(Color)等通用属性。标签是控件以及与之对应的变量、常量等对象在前、后面板的唯一标识。也就是说,一旦设计人员变更了控件的标签,那么与之对应的常量名、变量名等对象也会随标签的变化而变化;控件的标题则只出现在前面板,它可在控件标签不变的情况下任由设计人员修改。标题的这种特性,可使设计人员在不变更对象名的前提下,对VI前面板进行修饰说明或本地化(在后续章节会详细讲解)。此外,若要使程序支持Unicode编码方式,则必须在前面板中使用标题来说明控件。因此,建议在设计时采用标题来说明所有前面板中的控件。例如图2-1中,控件在前、后面板中均使用了Progress作为标签,而在前面板中则使用“测试进度”作为标题。与控件标签对应,在LabVIEW中还有一种称为“自由标签”(Free Label)的控件,它用于在前、后面板的任何空白处添加程序的说明或注释(选择文本工具后,在前面板或后面板空白处单击,然后输入注释即可)。控件使能状态或可见状态用于控制控件对用户是否可见或可操作,而通过控件大小和颜色属性可控制控件在前面板的外观。

图2-1 控件的标签和标题示例

除了通用属性外,不同控件还有千姿百态的“个性”。以按钮控件为例,在设计时不仅可以通过按钮的属性对话框(通过控件的右键菜单的“属性”选项打开“属性”对话框)对通用的属性进行设置,还可以设置仅属于按钮的按下或弹出文本(Button On/Off Text)、按钮行为(Button Behavior)方式等属性,如图2-2所示。

控件的属性不仅可以在设计时通过属性对话框进行修改,还可以在运行时通过控件的属性节点(Property Node,控件的右键菜单中选择“创建”→“属性”→“节点”选项)进行修改(这些内容将在后续章节详细介绍)。

如表2-1所示,LabVIEW提供多种控件,正是这些控件的通用属性和不同特性构成了LabVIEW可快速开发的基础。鉴于LabVIEW在线帮助对这些控件使用有详细说明,这里不再一一说明,我们将在后续章节中结合例子,对部分重要控件的使用进行讲解。对读者来说,越是了解这些控件,开发速度就越快,熟悉这些控件使用的过程是学习LabVIEW必不可少的一个阶段。

一般来说,完成控件选择和属性设置后,还需要把逻辑上相近的控件组织在一起,并对它们在前面板上的布局进行调整,必要时还需配以辅助修饰线、图片等,来完成VI前面板的设计。

图2-2 通过属性对话框设置控件属性