好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

LabVIEW程序界面的布局.doc

19页
  • 卖家[上传人]:pu****.1
  • 文档编号:471802830
  • 上传时间:2023-10-26
  • 文档格式:DOC
  • 文档大小:783KB
  • / 19 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 俗话说:“人靠衣装,佛靠金装”,应用程序的界面是提供应使用者的第一印象,直接影响到应用程序的顾客体验因此,有效、合理的界面可觉得程序增色不少LabVIEW提供了丰富的界面控件供开发者选择,有经验的程序员往往可以运用这些控件做出令人夸奖的界面效果在《LabVIEW Development Guidelines》(下载)和《The LabVIEW Style book》(简介)书中均有专门的章节来论述LabVIEW程序界面设计规范和措施本文重要从应用应用开发的角度描述某些通用的界面设计的措施1.1    控件的分类和排列在LabVIEW中,控件一般被笼统地分为控制型控件(Control)和显示型控件(Indicator)而对某一种具体的应用而言,更需要把Control和Indicator进行细分,使得具有同样功能的控件排放在一起,甚至构成若干个Group组LabVIEW提供了一系列工具供程序员排列和分布控件的位置以及调节控件的大小,如图 1所示图(a)是排列对齐工具,其中的图标可以很清晰地懂得各个按钮的作用使用Ctrl+Shift+A可以反复上一次的排列方式图(b)是位置分布工具,可以迅速地分布各个控件之间的位置。

      图(c)是大小调节工具,可以迅速地调节多种不同控件的大小(注意:部分控件的大小是不容许被调节的)图(d)是组合和叠放顺序工具,Group表达把目前选择的控件组合起来形成一种整体;Ungroup与Group相反,表达分散已经整合起来的各个控件;Lock表达锁定目前选择的控件,此时控件将无法被编辑(涉及移动控件的位置,调节控件的大小等);Unlock是解锁指令;Move Forward、Move Backward、Move to Front和Move to Back表达修改目前选择控件的排放顺序 1 控件排列和分布工具图 2是某个测试界面的控件摆放实例,尽管这些控件都是Indicator控件,但是仍然根据显示功能和内容的不同将控件进行了分类如果将其中的信息不通过任何分类而直接摆放在一起,则没有较好的条理性和层次性 2 控件摆放实例在实际应用中,需要一方面将Control和Indicator分开摆放;然后在Control和Indicator内部对控件按照功能进行分类,不同的类别之间以明显的标志进行辨别;最后要合理安排控件的位置和分布,保证整个界面匀称和整洁1.2     颜色的使用颜色在程序中的应用有多种功能,除了可以保证界面的丰富和完善之外,还可以重点辨别不同控件的功能,强调某些控件的作用和位置。

      LabVIEW提供了老式的取色工具和着色工具,如图 3所示取色工具是获取LabVIEW开发环境中某个点的颜色值(涉及前景色和背景色),并将获取的颜色设立为目前的颜色着色工具是将目前的颜色值(涉及前景色和背景色)设立到某个控件上3取色工具和着色工具【小技巧】(1)  在使用着色工具时,按住Ctrl键可以将工具临时切换成取色工具,释放Ctrl键后将返回着色工具2) 在使用着色工具时,使用“空格”键可以迅速地在前景色和背景色之间切换在着色工具中,右上角的“T”表达透明色,可以使用鼠标单击该图标设定目前的颜色为透明色,如图 4所示此外,LabVIEW还提供了一系列预定义的原则颜色供程序员选择,其中System的第一种颜色是Windows的原则界面颜色 4 着色工具面板LabVIEW容许设立一种VI窗口的透明色,在VI Property对话框中选择Windows Appearance页,单击Customize…按钮将弹出如图 5所示的对话框勾选“Windows runs transparently”选项,并设立透明度(0%~100%) 5 Customize Windows Appearance对话框1.3  LabVIEW控件在LabVIEW中有3种不同外观的控件可供选择,分别是:Modern、System和Classic。

      其中Modern控件是NI专门为LabVIEW设计的具有3D效果的控件,它可以保证在不同的操作系统下显示始终是同样的;而System是采用系统控件,它的外观与操作系统有关,不同的操作系统下控件的显示外观有所不同大多数的程序员似乎更乐意选择System控件,理由是它可以让程序看起来不那么LabVIEW化但是LabVIEW并不容许程序员任意自定义System控件的外观,这同步也限制了System控件的使用LabVIEW容许程序员在既有控件的基本上重新定义控件的外观(Type Def.和Strict Type Def.技术)图 6是使用控件自定义措施重新设计的Tank控件,程序员可以修改控件的多种显示体现方式,但是却不能修改控件的功能(可以使用XControl技术) 6 Tank控件1.4   插入图片和装饰程序中必要的图片不仅可以给顾客直观的视觉感受,还可以描述程序的作用(固然,不能使用过量的图片)最简朴的插入图片的方式是:将准备好的图片直接拖入到VI的前面板中或者使用Ctrl +C/V粘贴到前面板中固然,还可以使用Picture控件将图片动态地载入到Picture控件中此外,LabVIEW还提供了一种自定义程序背景图的方式。

      新建一种VI,在VI的垂直滚动条或水平滚动条上右击将弹出如图 7所示的快捷菜单 7 VI前面板快捷菜单选择Properties,将弹出如图 8所示的Pane Properties对话框在左下方的Background区域中内置了部分的图片供程序员选择,也可以使用Browse…按钮导入外部自定义的图片注意】如果需要导入不规则的图片,可以将图片的部分背景色设立为透明并保存为png的格式 8 Pane Properties对话框在Controls>>Modern>>Decorations和Controls>>System中有某些装饰用控件,如图 9所示,程序员可以使用这些装饰控件为应用程序增色图 10就是采用System控件中的System Recessed Frame和System Label控件设计的控件组合 9 装饰控件选板 10 装饰控件实例1.5 界面分隔和自定义窗口大小控件的显示效果与监视器是密切有关的,因此在程序设计时需要考虑目的监视器的颜色、辨别率等因素,并明确运营该应用程序所需要的最低硬件规定在诸多的论坛中常常会看到问题:如何才干保证应用程序的界面在更高的辨别率上运营时不会变形?这事实上是一种界面设计问题,而思考如何解决它却是应当从程序设计时就开始,而不是等到程序设计完毕后再探讨解决方案。

      LabVIEW中并没有提供一种有效的方式或工具来解决这个问题,但是我个人觉得这与LabVIEW无关,更应当把它归纳为通用的程序设计问题,解决它需要比较良好的界面设计、布局和分派作为前提事实上,程序往往会规定一种最低的运营辨别率,在此辨别率以上的显示屏上程序界面应当可以对的地被显示出来而在LabVIEW中,控件往往在高辨别率的显示屏上被拉大或者留有部分的空白,这使得整个界面完全扭曲了程序员最初的设计为了可以更加清晰问题的本质和谋求解决问题的方案,有必要对LabVIEW的前面板界面进行确认和分析如图 11所示,一种VI的窗口由几种部分构成:整个红色的区域称为一种窗口(Windows),而蓝色的区域称为一种面板(Panel)从图中可以看出,窗口中的标题栏、菜单栏和工具栏并不属于面板 11 VI窗口区域定义LabVIEW容许程序员将面板(Panel)划分为若干个独立的窗格(Pane)使用Controls>>Modern>>Containers选板中的Horizontal Splitter Bar和Vertical Splitter Bar可以将VI的面板进行任意的划分,如图 12所示 12 Containers选板划分之后的VI前面板如图 13所示,可以看出图中的Panel(蓝色区域)已经被划分为了5个窗格Pane,每一种绿色区域都被称为一种Pane。

      当Panel上只有一种Pane时,Panel与Pane会重叠因此,窗口(Windows)涉及整个界面,而1个窗口只有1个面板(Panel),该面板可以被划分为若干个独立的窗格(Pane)每个Pane都涉及其特有的属性和滚动条,而Pane之间使用Splitter进行分隔 13 划分之后的VI窗口定义在Splitter上右击可以设立Splitter的有关属性,如图 14所示Locked属性可以设立Splitter与否被锁定,被锁定的Splitter的位置将无法被移动与控件类似,LabVIEW提供了3种Splitter样式:Modern、System和Classic程序员可以使用着色工具设立Modern和Classic Splitter的颜色,使用手型工具调节Splitter的位置以及使用选择工具调节Splitter的大小14 Splitter右键快捷菜单目前再回头看本小节开头提到的辨别率问题,从常识上判断,当程序从低辨别率界面向高辨别率界面转移时,可以有如下的解决方案:1、 界面上的控件变大;2、 界面控件的位置重新分布,以平衡空白位;3、 界面控件的相对位置不动,留出合适的空白位在实际操作中,上述的3种方式似乎很难实现以满足界面大小变化带来的自适应问题。

      例如第3种方式看似简朴,却同样存在着疑问:应当在哪里留出空白位,是既有控件的左边?右边?上边?还是下边?打开某些原则的Windows界面程序,不难看出,往往程序中结合使用了上面的3种方式部分的控件位置和大小不变,留出合适的空白位给其他的控件,如Listbox、Graph、Tree等因此此类控件显示的信息较多,并且外观单一,变化它们的大小对整个界面的布局不会产生影响因此,在程序开始设计的初级阶段就有必要设计界面的大体控件布局和分布,以明确界面在不同辨别率下的调节方式如果界面控件过多,则可以通过其他的方式进行规避(例如对话框等),保证界面的大小调节不会影响到控件布局的变化应用(下载)】本节将以一种原则的Windows测试界面为例阐明界面设计的方式和环节一方面,需要根据程序的功能划分VI的Panel,并决定将其分为多少个Pane图 15将界面分为了8个Pane,依次为:工具栏、协助栏、测试信息栏、波形采集栏、状态栏(登陆人员栏、阐明栏、测试内容栏和测试时间栏) 15 划分Panel另一方面,在状态栏的四个区域中分别加入一种String型Indicator,并且勾选Indicator的右键快捷菜单选项:Fit Control to Pane,也就是说当Pane变化的时候String的大小也随之发生变化以保证String控件可以填充整个Pane,如图 16所示。

      16 在状态栏中加入Indicator控件单击窗口的最大化按钮,可以看出整个状态栏的高度变大而最右侧子状态栏的宽度变大,如图 17所示 17 最大化之后的状态栏事实上,当窗口(或者Pane)大小发生变化时往往不但愿状态栏的高度发生变化,而只需要变化其中某一种Pane的长度就可以了单击“还原”按钮,使窗口回到图 16所示的状态在底部的蓝色Splitter上右击,选择快捷菜单中的Splitter Stick Bottom选项,如图 18所示该选项表达在Splitter变化时始终保持底部的相对位置不变 18 Splitter右键快捷菜单再次最大化窗口,此时状态栏的高度将保持不变,而最右侧的子状态栏的宽度将变大,如图 19所示 19 最大化之后的状态栏如果但愿在。

      点击阅读更多内容
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.