五彩生辉—— LabVIEW 界面配色秘诀
LabVIEW程序界面的布置
俗话说:“人靠衣装,佛靠金装”,应用程序的界面是提供给使用者的第一印象,直接影响到应用程序的用户体验。
因此,有效、合理的界面能够为程序增色不少。
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控件,但是仍然根据显示功能和内容的不同将控件进行了分类。
LabVIEW的面板设计和用户界面优化
LabVIEW的面板设计和用户界面优化LabVIEW是一种用于编写控制和测量系统的强大的图形化编程语言。
在设计和开发LabVIEW应用程序时,面板设计和用户界面优化是非常重要的,它不仅可以影响用户的体验,还可以提高程序的可维护性和可扩展性。
本文将探讨如何设计LabVIEW面板和优化用户界面。
一、面板设计原则1. 界面简洁明了:LabVIEW面板应该尽量避免过于复杂和拥挤的设计,只展示必要的控件和指示器。
合理的布局和空白区域可以增强界面的整洁度和可读性。
2. 控件选择与布局:选择适当的控件是关键,不仅要考虑功能需求,还要考虑用户的直观习惯。
应该将相关的控件放在一起,并且进行合理的布局,以提高用户的操作效率。
3. 颜色和样式的搭配:选择合适的颜色和样式可以增强界面的美观性和可视性。
应该避免过多的颜色和装饰,保持简洁和一致性。
4. 错误处理和状态指示:在面板设计中应该考虑到错误处理和状态指示,以便用户能够轻松地识别和解决问题。
可以通过合理的标识、颜色和图标来指示错误状态和程序的运行情况。
二、用户界面优化技巧1. 响应速度优化:用户界面应该尽可能地响应迅速,避免卡顿和延时。
可以通过减少计算量、优化算法和合理使用缓存等方式来提高程序的执行效率。
2. 输入验证和限制:在对用户输入进行处理时,应该进行验证和限制,以确保输入的准确性和合法性。
可以使用适当的控件属性进行输入检查,或者在程序中添加相应的逻辑来处理无效输入。
3. 异常处理和容错设计:优化用户界面还需要考虑到异常情况的处理和容错设计。
在程序出现异常时,应该提供相应的错误信息和解决方案,以便用户能够快速地解决问题。
4. 文档和帮助信息:为了方便用户使用和了解程序,应该提供相应的文档和帮助信息。
可以在界面中添加必要的说明文字、标签和帮助按钮,以引导用户正确地操作。
5. 用户反馈和改进:为了不断改进用户界面,应该收集用户的反馈意见和建议。
可以通过用户调查、反馈按钮等方式主动获取用户的意见,然后根据反馈做出相应的改进。
配色方法,三种UI的选择配色方法
配色方法,三种UI的选择配色方法方法一:色轮配色色轮由12 种基本的颜色组成。
首先包含的是三原色(Primary colors ),即蓝、黄、红。
原色混合产生了二次色(Secondary colors ),用二次色混合,产生了三次色(tertiary colors )。
色轮有五个同心环组成,从暗到亮-暗色处于大环,明色处于小环,而中间是颜色的基本色相。
根据颜色的关系有以下几种配色分类a、单色配色单色搭配就是以一个颜色为主,然后利用颜色的深浅来进行搭配的方法,即色轮中,一种色相的暗、中、明三种色调,单一颜色是比较单调,所以利用颜色的深浅变化来增加多彩性。
优点:画面统一,搭配时相对简单而且一般都不会给人难看的感觉,一般不会给人难看的感觉。
b、邻近色配色在色相环上相邻的色彩互为邻近色优点: 色调统一,具有低对比度的和谐美感。
这种颜色搭配产生了一种令人悦目、低对比度的和谐美感。
类比色非常丰富,在设计时应用这种搭配同样让你轻易产生不错的视觉效果。
c、互补色和对比色配色互补色是在色相环上180°相对的两个颜色,而对比色则是在色相环上150°到180°范围内相对的两个颜色。
优点:补色和对比色形成强列的对比效果,传达出活力、能量、兴奋等意义。
补色要达到最佳的效果,最好是其中一种面积比较小,另一种比较大。
比如在一个蓝色的区域里搭配橙色的小圆点。
案例:d、分裂补色配色如果我们同时用补色及类比色的方法来确定的颜色关系,就称为分裂补色。
优点:这种颜色搭配既具有类比色的低对比度的美感,又具有补色的力量感。
形成了一种既和谐又有重点的颜色关系。
如在上面三种颜色中,红色就显得更加突出。
案例:e、原色搭配配色除了在一些儿童的产品中,三原色同时使用是比较少见的。
但是,无论是在中国还是在美国的文化中,红黄搭配都是非常受欢迎。
红黄搭配应用的范围很广――从快餐店到加油站,我们都可以看见这两种颜色同时在一起。
labview完整教程详细解答
第一讲:认识Labview1.1 Labview 简介在开始菜单里找见NI Labview7.1 点击打开,会出现如下界面:从File>>New VI 或者从右半部分中的New>>Blank VI 都可以打开如下界面:上图中前图是虚拟仪器的前面板,是用户使用的人机界面,后面的是程序框图界面(即后面板)。
在LabVIEW的用户界面上,应特别注意它提供的操作模板,包括工具(Tools)模板、控制(Controls)模板和函数(Functions)模板。
这些模板集中反映了该软件的功能与特征。
下面我们来大致浏览一下。
工具模板(Tools Palette)该模板提供了各种用于创建、修改和调试VI程序的工具。
如果该模板没有出现,则可以在Windows菜单下选择Show ToolsPalette命令以显示该模板。
当从模板内选择了任一种工具后,鼠标箭头就会变成该工具相应的形状。
当从Windows菜单下选择了Show Help Window功能后,把工具模板内选定的任一种工具光标放在流程图程序的子程序(Sub VI)或图标上,就会显示相应的帮助信息。
工具图标有如下几种:图标名称功能1Operate Value(操作值)用于操作前面板的控制和显示。
使用它向数字或字符串控制中键入值时,工具会变成标签工具2Position/Size/Select (选择)用于选择、移动或改变对象的大小。
当它用于改变对象的连框大小时,会变成相应形状。
3Edit Text(编辑文本)用于输入标签文本或者创建自由标签。
当创建自由标签时它会变成相应形状。
4Connect Wire(连线)用于在流程图程序上连接对象。
如果联机帮助的窗口被打开时,把该工具放在任一条连线上,就会显示相应的数据类型。
5ObjectShortcut Menu(对象菜单)用鼠标左键可以弹出对象的弹出式菜单。
6ScrollWindows(窗口漫游)使用该工具就可以不需要使用滚动条而在窗口中漫游。
教你如何美化Labview界面
自我介绍
• 毕业于清华大学汽车工程系 • 6年LabVIEW使用经验 • 目前担任NI技术市场工程师
Email : bin.zhou@
究竟能做出怎样的界面?
实现iPhone功能的几个关键技巧
NI 技术市场工程师 周 斌
技巧一 : 巧用透明
透明色的使用
透明色的使用
技巧二 : 界面分层
Tab 控件分层
iVIEW 界面的分层
Button 透明层 图标显示层 子面板层 背景层 (作为iVIEW的背景图片) (用于动态调用各App) (用于响应鼠标的事件) (使用Picture控件)
技巧三 : 程序架构
生产者 / 消费者循环
改进生产者 / 消费者循环
• Cross platform
• ActiveX Controls
• .Net Controls
• 新版本
VS
Windows窗口样式
• 标准样式
• WS_*** • WS_VISIBLE,WS_POPUP,WS_CHILD …
• 扩展样式
• WS_EX_*** • WS_EX_WINDOWEDGE, WS_EX_CONTROLPARENT… • WS_EX_LAYERED (Windows XP+)
• Spy++: 窗口间谍 (Visual Studio Tools)
• 查看窗口样式 • 查看窗口消息 • 修改部分窗口属性
老版本实现
新版本构思
由C++创建的 WS_EX_LAYERED 窗口作为边框
新版本实现(LabVIEW)
新版本实现(C++)
• 载入指定的边框图片 • 创建DC(Device Context)并关联图片 • 创建WS_EX_LAYERED窗口,并设置其父窗口为传入的 LabVIEW窗口 • 用创建好的DC更新窗口
精通LabVIEW虚拟仪器程序设计与案例实现--界面设计与美化 ppt课件
常用界面风格——测试平台界面
第13章 界面设计与美化
常用界面风格——Windows平台界面
第13章 界面设计与美化
菜单设计——菜单编辑器
打开菜单编辑器的方法为,在菜单栏里选择“编辑→运行时菜单”。
第13章 界面设计与美化
菜单设计——菜单操作函数
函数→编程→对话框与用户界面→菜单
思路一般为:先获取当前菜单,然后再对它进行编辑。
精通LabVIEW虚拟仪器程序设计与案 例实现
第13章 界面设计与美化
本章内容
界面设计的一般原则 菜单设计 子VI的调用与重载 界面美化常用技巧
第13章 界面设计与美化
界面设计的一般原则
第13章 界面设计与美化
界面设计的一般原则
推荐对控件进行归类,功能类似的放在界面的同一区域,比如说, 将命令、控制按钮放在一起,结果显示放在一起,状态显示放在 一起;
在界面上放置多个“子面板”作为仪器界面的“容器”,右击每 一个“子面板”并选择“创建→引用”选项,在程序框图中创建 它们的引用。
通过For循环来实现载入VI模板的多个复本。
第13章 界面设计与美化
实例——子界面重用
第13章 界面设计与美化
实例——子界面重用
第13章 界面设计与美化
界面美化——使用布局工具排列对象
这个子VI的功能是实现 对输入信号的滤波,输出滤 波后的波形,滤波器参数可 以设置。
第13章 界面设计与美化
Байду номын сангаас
实例——创建子VI
为子VI配置接线端口
第13章 界面设计与美化
实例——创建子VI
修饰子VI图标
第13章 界面设计与美化
子VI调用
巧夺天工 —— LabVIEW 控件的妙用
注:本文为LabVIEW 网络讲坛系列短片的技术文档,第一部《界面风云》中将主要讲述在LabVIEW 中创建用户界面的方法与技巧。
创建一个美观易用的用户界面,和家居布置一样:控件就像是家具,具有各种款式供您灵活选择;实用的家具需要配以和谐的颜色,颜色没有美丑之分,搭配是关键;如何把这些美观实用的控件合理地摆放在用户界面上同样也是一种学问,合理的布局可以达到整洁方便、赏心悦目的作用。
本文旨在向大家介绍如何创建出美观实用的控件。
LabVIEW 作为图形化的操作系统,已经为开发者提供了大量方便实用的控件,使用这些资源,无需任何额外加工和修饰就能创建出如图1所示的直观、可读性强、便于操作的用户界面。
当然,有些时候,针对一些特殊应用,基本控件可能无法满足设计人员的要求,那么我们就可以在LabVIEW 中自定义各种控件,下面的演示中将向大家介绍如何使用自定义控件来丰富前面板内容的。
巧夺天工 —— LabVIEW 控件的妙用NI 资深应用工程师郑凯图bVIEW 示波器界面首先,我们来看第一个范例,一个钢琴的界面(图2)。
如果希望实现如图的效果,即使不了解太多的LabVIEW 编程技巧的工程师也可以实现,无非是把一个布尔类型的控件修改成琴键的形状,然后不断复制控件,并使之排列整齐即可。
但是,如果我们希望改变这些控件的颜色、长度和宽度的时候,就会遇到问题,我们需要手动地去调整和修改所有的控件,当控件的数量较多时,其工作量就会变得非常巨大。
因此,使用自定义控件的方式就能解决这个问题。
我们选择一个控件,右键单击,选择高级,再选择自定义后进入自定义控件编辑模式。
再修改控件至您所需要的样式,将控件保存为严格自定义类型,关闭并保存该控件(图3)。
图bVIEW 钢琴界面图3.设计自定义控件并保存为“严格自定义类型”我们可以再通过复制的方法在前面板添加该自定义控件,添加完毕之后,选择其中任意一个,选中高级的自定义选项,进行外形和颜色的调整,并保存关闭。
LabVIEW界面设计打造简洁易用的用户界面
LabVIEW界面设计打造简洁易用的用户界面在当前信息化时代,软件界面设计变得越来越重要。
一个好的用户界面能够提升软件的易用性和用户体验,而一个繁复、混乱的界面则可能导致用户流失。
作为一个强大且灵活的控制与测量软件,LabVIEW(Laboratory Virtual Instrument Engineering Workbench)在界面设计方面也备受关注。
本文将介绍如何通过LabVIEW界面设计打造简洁易用的用户界面。
一、功能定位与界面设计在开始设计用户界面之前,我们需要先明确软件的功能定位。
通过明确软件的目标和用户需求,我们能够更好地选择合适的界面设计方案。
在选择界面设计方案时,我们可以考虑以下几个方面:1. 界面整体布局:合理的界面布局能够使用户能够快速找到需要的功能和信息。
我们可以采用经典的三栏式、主从式或者平铺式布局,根据实际需求决定。
2. 导航设计:导航设计关乎用户在软件中的行为流程,合理的导航设计能够提高用户的操作效率。
我们可以通过添加菜单、工具栏和导航面板等形式来实现良好的导航设计。
3. 控件选择:选择合适的控件能够直观地呈现数据或者功能,同时也能够提高用户的操作效率。
在LabVIEW中,我们可以使用按钮、滑动条、图表等控件来实现各种功能的展示和操作。
二、界面美化与风格设计除了功能定位和界面设计,界面美化和风格设计也是打造简洁易用的用户界面的关键。
以下是几个实用的界面美化和风格设计建议:1. 颜色搭配:合理的颜色搭配能够提高界面的美观度和可读性。
我们可以选择简洁明快的颜色,同时避免颜色过于杂乱,影响用户的视觉体验。
2. 图标设计:图标是用户界面中重要的组成部分之一,好的图标设计能够让用户更好地理解功能或者操作内容。
我们可以选择简洁明了的图标,或者自定义特定样式的图标。
3. 字体选择:合适的字体能够提高用户的阅读体验。
我们可以选择易读且符合软件风格的字体,同时避免字体过于花哨、难以辨认。
LabVIEW中的人机交互界面设计技巧
LabVIEW中的人机交互界面设计技巧LabVIEW是一款非常强大的图形化编程环境,广泛应用于工业自动化、测量与控制领域。
在LabVIEW中,人机交互界面是用户与程序进行信息交流的重要途径。
良好的人机交互界面设计能够提高用户的工作效率,优化用户体验,本文将介绍一些LabVIEW中的人机交互界面设计技巧。
一、界面布局与排版设计1. 合理划分界面区域在设计LabVIEW界面时,首先要根据功能和信息的关联性进行界面区域的划分。
可以使用容器控件,如Tab控件、Cluster等,将相关的控件组织在一起,提高界面的可读性和易用性。
2. 使用合适的控件LabVIEW提供了丰富的控件元素供用户选择,如按钮、滑动条、数字显示等。
在选择控件时,要根据功能需求和用户习惯进行选择,以达到最好的用户体验。
3. 合理调整控件的大小和位置控件的大小和位置对用户的操作和视觉效果有很大影响。
需要根据控件的功能和重要性,合理调整控件的大小和位置,以避免界面混乱和操作困难。
4. 使用合适的配色方案良好的配色方案能够给用户带来舒适的视觉体验。
在LabVIEW 的界面设计中,可以选择适合应用场景和颜色搭配的配色方案,提高界面的美观性和可读性。
二、界面操作方式设计1. 设置合理的交互方式在LabVIEW中可以通过按钮、复选框、滑动条等控件进行用户操作,通过响应事件来实现不同操作的功能。
在设计界面时,要根据实际需求设置合理的交互方式,如单击、双击、拖动等。
2. 提供合适的反馈机制用户操作后,及时给予反馈是良好的用户体验的重要组成部分。
可以在界面中设置合适的提示信息、动态效果或状态指示器等,及时向用户传达操作结果和系统状态。
3. 设计可撤销与重做功能在LabVIEW应用中,用户可能会频繁进行参数调整和试验验证等操作。
为了提高用户操作的自由度,可以设计可撤销与重做功能,使用户可以轻松地回退和恢复操作。
三、界面美化与优化1. 图标与图片的使用在界面设计中,可以使用图标和图片来增加界面的美观性和信息量。
LabVIEW 界面设计秘诀
First of all we’ll quickly define what we mean by UI and introduce some rules, or guidelines, that you should follow to help you create quality UIs. UI design principles are no different in LabVIEW as they are for any other programming language and there are many good resources available on the internet and in books; consequently we won’t spend too much of our time here today talking about generic UI principles. Topics such as how to choose nice colors or group like objects are important but since they are covered so well elsewhere I will leave those as a homework assignment and spend most of our time here showing you some techniques and features in LabVIEW which will allow you to create much better UIs without doing too much extra work.Finally, since LabVIEW has such a strong community of developers I’ll leave with a URL where you can go and get some reusable UI components, as well as discuss and share your UI‐related questions.UI stands for user interface. It is the way your applications user gives commands and receives feedback from your application.For those of you who develop applications to sell, the UI is often the “cover” to your book –the crucial first impression. A good UI implies a thorough, professional development team whereas a sloppy UI can turn potential clients off.A good UI makes the user’s job easier since they spend less time trying to figure out how to complete their task (which often translates to less questions for the developer). I bet you can name a few applications off the top of your head where an unintuitive UI makes using that application more difficult than it should be which translates into inefficiency, frustration and resentment from you, the user.Your job as the UI developer is to predict the points of frustration and lay out an interface that helps the user get their job done. Getting the job done is most people’s primary concern.The design of the user interface and the usability of the application are closely intertwined. Any visual element that doesn’t contribute in some way to the efficient completion of tasks in your application is in some ways superfluous “eye candy”. This isn’t necessarily bad but it certainly shouldn’t be where you spend most of your time.Likewise, functionality or features that aren’t represented in the UI can only be considered background tasks since the user has no way of using that functionality.Some general rules I suggest you keep in mind as you develop are 1. Don’t be innovative, 2. Less is more, and 3. Think about your user. I’m not saying that you should never break one of these rules, but if you do you should do so consciously and for good reason.Let’s look a little deeper at each of these rules….My first rule is don’t be innovative.To illustrate this point think about a car interior. Everyone who knows how to drive a car is familiar with a steering wheel, two or three pedals, a gear stick of some kind, normally turn signal stalks etc. You don’t have to relearn how to drive a new car. The basic controls are the same as your old car (the radio or navigation probably isn’t –and for me that is often a point of frustration).Chances are the program you are writing is not going to be the user’s first computer program. Therefore the user has some kind of pre‐learned notions of how to interact with applications. You should fit into those notions rather than forcing the user to learn your way of doing things. A good rule people working on Windows systems is “make your application behave like Microsoft Office” since so many people are familiar with Office. Practically this means using common designs for buttons, using icons people will recognize, putting menus in places people expect them etc.Note that this rule doesn’t mean you can’t be a little creative. There is still space for customization and adding your own touches, just do so in a way that doesn’t impact the usability of your program.Rule#2 Less is More.Don’t clutter up the screen unnecessarily with obscure settings or controls. Hide things that are only used infrequently and give the user a way to bring them back when necessary.Presenting the user with fewer options eliminates distractions and allows them to focus on whatever it is that they ought to be focusing on.One company who is very good at applying this rule is Apple. Both the iPod and the iPhone have been huge successes, despite generally costing more, having fewer features and lower specs than competitors products. One of the big reasons for this success is Apple’s commitment to stripping out unnecessary options and making an attractive user experience that preserves the important core functionality with fewer distractions. The iPod with it’s wheel and the iPhone with it’s solitary button are simple, yet effective.As a developer it’s easy to assume that everyone knows how your application works and how to complete tasks using it –and if you are the intended user that’s great. For those of us who have to develop applications for other people to use then we have to keep those other people in mind as we develop.The first implication of this is helping a user who doesn’t know as much as you do. They might not intrinsically know what each button/control in your applications does (although they might if you follow rule #1). For those cases where you have a unique action in your application use contextual cues to teach your user. Tooltips and status bars are common techniques that allow users to get more information about what a button does before they click on it.Once the user clicks on something they generally expect something to happen. If the task is particularly slow you need to update the user to let them know that your application is working correctly. Just because you know what should happen in a given situation doesn’t mean that your user does.The second major implication of thinking about your user is thinking about how and where the program will be used. Will the user have a mouse or keyboard? If one is missing that has implications as to how you will get input from the user. Touch screens are becoming increasingly popular and have their own sets of requirements (such as larger buttons and not relying on mouseover effects). Is your application going to be used outdoors or on low color displays? If so you will want to pick color schemes that do not rely on the user being able to see subtle differences in contrast.We’ll spend most of the rest of this presentation looking at three different UI scenarios and some techniques you can implement in LabVIEW to improve your applications.The Windows Desktop App is used on a PC with a high‐resolution monitor, a keyboard and a mouse. The user spends a fair amount of time engrossed by the application and expects this application to sit alongside other applications that they have installed on their computer.This is a very common scenario where users generally have a lot of established UI expectations that you should take advantage of. Luckily LabVIEW has a number of features that can help you do just that.Before we dive into LabVIEW let’s review the rules and discuss how they apply to this scenario.LabVIEW contains three different sets of controls. The “Modern” style is set as the default but you can change this preference in Tools»Options»Front Panel. Since I primarily develop for desktop applications I tend to set my default to be the System controls since they match the operating system that the application is being run on.A quick and easy way to convey more meaning with your buttons is by adding decals.People know that a floppy disk icon means save and a picture of a housecorresponds to a “Home” screen. Using these icons in your application lets theuser almost work on autopilot as their visual brain can recognize the button and not rely on reading every word./watch?v=2NdqXh67makHow to Add Decals to Buttons1.Drop a System OK Button on the front panel.2.Right click on the control and select Advanced»Customize…3.Edit»Import Picture to Clipboard and select your image ‐•PNG files work best since transparency is preserved4.Right click on the control and select Import Picture from Clipboard»Decal5.Click the wrench icon to change customize mode6.Move the decal or the text so they aren’t overlapping7.Save your custom controlReuse tip:If you give your customized control an icon and save it in <LabVIEW>\user.lib it will show up in the controls palette under User Controls.Tooltips are the explanatory text that appears when the mouse hovers over a UI element for a few seconds. There is no better way to help and unsure user figure out exactly what a given button does by popping it up right as they hover over the button in a state of indecision.LabVIEW has this capability built in for all controls./watch?v=NGeElmr1q2gThe default graphs in LabVIEW were designed to look similar to the physical instruments that virtual instruments often replace. Since we are developing for a different type of user –namely the desktop PC use case –we can change the color scheme to better fit the work environment and also help our user with their primary task.In this application I am assuming that the user is trying to identify whether or not a given sine wave violates a simple limit test./watch?v=rOUcBvyHj5EThe LabVIEW toolbar is for you, the LabVIEW developer. It includes all the debugging and editing tools you need to create your application. It is unlikely that your end user cares about these tools and worse yet, the extra buttons may distract and confuse your user. Hiding the toolbar while your application is running is generally a good idea once you know that the application is functioning correctly./watch?v=2CbKuBVGzo0The run‐time menu is the familiar File, Edit, etc menu you see at the top of most Windows applications. LabVIEW has a default run‐time menu with a large set of entries which may or may not be applicable to your user.LabVIEW allows you to easily edit the menu to contain as many or as few of the default options as you wish. You can also add your own menu items and use the event structure to handle the user’s selection./watch?v=wkpiAmHFddMYou can also customize the run‐time shortcut (right click) menus for any control by right‐clicking on the control and going to Advanced»Run‐Time Shortcut Menu»Edit.Grouping infrequently changed options or controls in a separate dialog is a quick, easy, and common way of freeing up space on the main display.Dialogs work best for “set‐and‐forget” type of options that you don’t expect people to regularly interact with or need to reference. They also work well for controls that require lots of contextual information to assist the user in making a decision./watch?v=L‐hNmzQ9tFcCompartmentalizing is a common organizational strategy that groups like objects in their own areas. Just like a workspace or a child’s bedroom ‐‐It’s much easier to keep places tidy if everything has it’s own place.Panes are areas of a front panel that are separated by splitters. By default, front panels start with just one big pane which works great for small, simple applications. For larger or more complex apps I like to separate the front panel into several panes for a few reasons: 1.Panes allow some parts of the front panel to remain in place while other parts scroll ormove.2.Panes can be fixed to either edge of the screen and can have a fixed width or share theavailable screen size proportionally. This makes it much easier to handle differentscreen sizes./watch?v=hZ180R7ADtoAnother advantage of panes is that since a splitter is a GObject we can change it’s position programmatically using VI Server. Using a button, event structure and property node we can give the user the ability to “hide” a panel completely and then bring it back with the click of a mouse.Another special‐use case for panes can be to create a persistent status bar. In the bottom left of your status bar add a string control and simply update the text contained in the status bar via local variable wherever you need to.This simple technique is one of the most effective ways of keeping your user informed as to what state your application is in or what task it is busy performing.Along the lines of keeping the user updated –LabVIEW lets you change the cursor to a busy cursor programmatically. The busy cursor is an OS‐wide UI element that most users are quite familiar with (it means –“wait, I’m trying to do something!”)./watch?v=_mosr‐oTgRMPutting everything together you have a few options for updating the user. Personally I think the best approach is to use all of them! I even include a progress bar if I know how long a given task will take.If you don’t update the cursor or inform the user in some other way you run the risk of your user thinking that clicking a button or performing some other action went unnoticed by your application. Impatient users have a tendency to re‐click or otherwise attempt to force some change (including the dreaded Ctrl‐Alt‐Delete) if they don’t think the application is responding. It is up to you to let them know that everything is OK and that the app is just busy.For really long tasks (longer than a couple of seconds) you might want to add a cancel capability if possible. You don’t want a mis‐click to tie up the application for a long time.The next application we will look at is for a small touch screen display. Here our primary concerns are the small screen size, the need to account for fingers rather than a much more precise mouse cursor and the possibility of glare or direct sunlight impairing the contrast of our display.Again, applying the rules really ensures we think about our requirements.First of all since we want simple, high contrast controls, that more resemble physical buttons the modern control style makes more sense than system in this case.Secondly since the screen real‐estate problem is probably our biggest challenge here. Lets spend some time looking at a creative solution.Tab controls are a common way of displaying multiple pages worth of information. The “tabs” at the top allow the user to see what displays are available and switch between them.Having switchable pages of displays is perfect for our use case since we have such a small screen. However the “tabs” themselves could be problematic since the touch screen might not be accurate enough to press in such small locations reliably.VI Server comes in very handy again here since we can hide the tabs and change the page programmatically.In the demo I use two tab controls. One to contain the sliding menu and one to contain the pages of controls/graphs etc.The sliding menu tab control only has one page and has the tabs hidden. The reason I use the tab control is that it is a convenient container that I can move programmatically.The other tab control has several pages which are changed using VI Server according to which button the user presses in the menu.This is the SubVI which does the sliding. In the demo I use it to move a tab control that contains all the menu buttons but it works with any type of front panel control.The basic premise of the VI is that in order to move an object from it’s initial position to a desired position it moves the object halfway and then iterates until the object gets to the desired location. This approach generates the natural sliding appearance where the object moves quickly at first and then slows down as it stops.Putting the tab control containers, move.vi and an event structure together you have all the elements of the sliding menu. When the menu button is clicked we slide the tab control to the visible position and store the old position in shift register. Then when the user makes a selection we slide the menu tab control back to it’s original position (storing the visible position in the shift register) and switch the main content tab control to the desired page.The last application we will look at today is an informative kiosk display. This type of application has a unique set of demands since there isn’t much user interaction –the primary concern is allowing a user to consume some important information with just a quick glance.We are assuming the information density is fairly low and an attractive appearance is an important consideration in order to attract attention.Just like your computer desktop background you can use an image as the background of your front panel. A well chosen background image can provide context (i.e. “I know this is the pond temperature monitoring VI because I can see the pond in the background”) or visual appeal.On the other hand –too complicated of a background image can be distracting and make important controls and data hard to read. There is rarely an absolute right or wrong in this regard but if you know what LabVIEW is capable of and keep the 3 rules in mind you are in a good place to make your own determination./watch?v=gxXJfonTlFcIn the demo you will see that I used a “busy” background image but still made the controls easy to read by including a semi‐transparent decoration with a nice gradient fill and drop shadows. LabVIEW currently doesn’t have these kind of effects built in but you can easily import images from other applications when you need them.This particular decoration I created in Microsoft PowerPoint and imported into LabVIEW as an image which sits on top of my background image./watch?v=gjYfqhlv2hQAnother default behavior that you may choose to override is the frame applied to all controls and indicators. For most applications the frame is beneficial to separate the controls contents from surrounding labels. The default behavior of white backgrounds for controls and gray backgrounds for indicators is another usability feature that subtly indicates to the user whether or not a given object accepts input or not.If you choose to go without these features you do have that ability. For this particular application we aren’t concerned about users becoming confused about controls vs indicators since it’s a read‐only application./watch?v=jgUB1oDmf‐4The weather icon indicator is a special case of the previous technique. By combining a transparent picture ring control with some transparent PNGs you can create some pretty powerful, nice looking graphics which will add some visual appeal to your application and also increase the usability of your UI by providing instantly recognizable icons for various states./watch?v=AmDLCsnOegwYou’ll also notice the gauge control in our demo doesn’t look anything like the default gauge control.Most of the default controls in LabVIEW can be customized by replacing most of the source imagery using the control editor. Since doing so requires a fair amount of artistic ability and knowledge of external images editors we aren’t going to cover exactly how to create your own controls in this presentation.This particular control is part of the Inspired Control Suite available for download from the community. In the community you can also find a tutorial explaining the details of how to create customized controls.。
设计LabVIEW高级用户界面
设计LabVIEW高级用户界面
如果您仍然还在默认的灰色前面板上填充各种新式或经典控件,那么您甚至还没有真正触及到用户界面(UI)的设计。
如果说架构合理、功能完备的程序框如果您咨询NI LabVIEW 开发者他们使用LabVIEW 最爱它的哪一特性,大家会给您各种各样的回答,比如可以方便处理现实世界中的信号,或者使用高级工具获得效率提升,又或者是编写优美的代码是每个应用程序重要的组成部分。
毕竟,无法正常执行的程序是无意义的投资。
随着LabVIEW 不断的扩展,它不断应用于越来越复杂的应用中,开发人员必须投入更多的精力来提高应用程序开发的美感,因为即便是功能完好的程序,如果它的界面会令用户困惑不解,那么它的价值也大打折扣。
下面介绍三个LabVIEW 技巧,帮助您改进程序,使它拥有外观和功能都更加优秀的UI。
1. 自定义UI 外观
改进UI 外观最简单的方式是利用其他元素替代LabVIEW 默认的灰色前面板背景以及新式控件面板。
只要简单改变前面板的背景颜色、利用外部资源自定义控件增加了丰富性和灵活性。
使用LabVIEW 控件编辑器,您可以剖析每个控件,对组成控件的每个底层2. 合理组织复杂UI
然而,伴随着您的应用程序功能范围的扩大,您不得不经常在您的LabVIEW 前面板增加大量的显示信息。
幸运的是,如果不要求同时显示所有的控件,LabVIEW 有两个简单的技巧可以简化处理复杂UI 的工作。
选项卡(Tab)控件是一个常用的UI 组件,它可以有效地将UI 功能封装成几个不同的部分。
它们简单易用,并且比大多人想象的更为灵活。
在您的前面板添加一个选项卡控件,然后将其它输入和显示控件填充到选项卡,您可以增。
Vision彩色图像解析
前言在3-1这个章节,我们要来谈谈彩色图像,还有如何使用LabVIEW中所提供的Vision色彩工具来解析彩色图像,基本上我们可以说彩色图像中的每一个像素都是由RGB三原色所组成,这应该是大家比较熟知的,用比较专业的说发,我们会称其为RGB色彩空间,如果我们想要从彩色图像中找出一个完美的红色,那我们可以找找看哪一个像素里面的RGB三原色分别是255、0、0,但是如果我们要找的红色不是那么完美的红色,那我们该怎么办?如果我们想要从彩色图像中找出来的是黄色,那我们该怎么办?有没有其他的色彩空间定义,可以让我们更清楚地去定义我们要的颜色?我们要如何去定义我们要找的颜色?我们要如何从彩色图像中区分出不同的颜色?要使用LabVIEW得到上述问题的答案该怎么做?在第三章中,你将会得到这些答案。
3-1-2 色彩空间在前一小节中我们提到彩色图像可以解析为RGB三原色,但其实彩色图像还可以解析为其他的组成方式,为什么色彩会有RGB以外的组成方式呢?因为不同的解析方式,可以让色彩在不同领域中被应用的更恰当,譬如印刷业所使用的CMY(K),以下我们介绍几种LabVIEW Vision的色彩解析工具所能处理的色彩组成方式:· RGB:将色彩解析成红色(R)、绿色(G)和蓝色(B)。
· HSL:将色彩解析为色相(H)、饱和度(S)和亮度(L)· HSV:将色彩解析为色相(H)、饱和度(S)和明度(V)· HSI:将色彩解析为色相(H)、饱和度(S)和亮度(I)除了上述提到的四种色彩组成方式外,其他还有CIE、CMY(K)和YIQ等等各种应用在不同领域的色彩组成方式,有兴趣的朋友可以上维基百科看看说明,因为LabVIEW Vision工具并没有对其他的色彩空间去做解析,故作者在此则不多加着墨,下面我们开始来谈谈上述提到的四种色彩组成方式。
RGB是最常见的色彩组成方式,同时也是人眼解析色彩的方式,顾名思义RGB 是将色彩解析成红色(R)、绿色(G)和蓝色(B),即所有的颜色都是由这三种颜色依照不同的比例调配而来。
利用LabVIEW进行人机交互界面设计与实现
利用LabVIEW进行人机交互界面设计与实现使用LabVIEW进行人机交互界面设计与实现随着科技的进步,人机交互界面在各个领域都扮演着重要的角色。
人机交互界面的设计与实现关系到用户体验的好坏,而利用LabVIEW 这一强大的工具进行设计与实现,不仅能够提高界面的易用性和美观性,还能够增加系统的可靠性和扩展性。
本文将介绍利用LabVIEW进行人机交互界面设计与实现的方法和技巧。
一、LabVIEW概述LabVIEW是一种图形化编程环境,由美国国家仪器公司开发。
它以图形化的方式进行编程,使得程序的开发变得直观、高效。
LabVIEW具有强大的数据获取、分析和可视化能力,广泛应用于工程和科学领域。
二、人机交互界面设计原则在进行人机交互界面设计时,应遵循一些基本原则,以提高用户的满意度和使用体验。
以下是一些常见的人机交互界面设计原则:1.界面简洁易懂:界面应尽量简洁明了,避免过多的冗余信息和复杂的操作步骤,使用户能够迅速上手。
2.一致性:在界面的设计中,保持一致性是非常重要的。
相同的功能应该采用相同的图标、样式和颜色等,以提供一致的使用体验。
3.可用性:界面应该具有良好的可用性,即用户能够很容易地找到所需要的功能,并且能够正确操作。
此外,还可以提供一些辅助功能,如快捷键、提示信息等,以增加用户的便利性。
4.可扩展性:当系统需要增加新功能或者进行功能修改时,界面能够方便地进行扩展和修改,而不需要对整个系统进行重构。
三、LabVIEW进行人机交互界面设计与实现的步骤利用LabVIEW进行人机交互界面设计与实现,需要经历以下几个步骤:1.界面布局设计:首先要确定界面的整体布局,包括控件的排列方式、大小和位置等。
可以使用LabVIEW提供的各种控件,如按钮、文本框、图表等,来构建界面。
2.控件属性设置:对于每个控件,需要设置其属性,包括外观、交互方式等。
通过设置控件的属性,可以实现界面的美观和易用性。
3.事件处理:在LabVIEW中,可以为每个控件添加触发事件,即当用户操作控件时,相应的事件将被触发。
人机交互界面设计中的色彩搭配技巧
人机交互界面设计中的色彩搭配技巧在人机交互界面设计中,色彩搭配是一项至关重要的技巧。
合理的色彩搭配可以帮助提升用户体验,增加用户的情感连接,并引导用户在界面中的操作。
本文将介绍一些在人机交互界面设计中常用的色彩搭配技巧与原则。
1.了解色彩的作用和意义在进行色彩搭配之前,设计师需要了解色彩的基本特性和作用。
不同的颜色具有不同的情感表达,例如红色代表活力和激情,蓝色代表冷静和信任,黄色代表阳光和快乐等。
了解色彩的作用和意义可以更好地将其应用于人机交互界面设计中。
2.使用有限的色彩在人机交互界面设计中,过多的色彩会导致视觉混乱,使用户难以集中注意力。
因此,设计师应该尽量使用有限的色彩。
一般来说,选择2-3种主色调,并在此基础上使用中性色彩进行补充。
这样能够简化设计,使界面更加清晰和易于理解。
3.运用色彩对比色彩对比是一个重要的设计原则,在人机交互界面设计中起到引导用户注意力以及界面元素区分的作用。
高对比度可以帮助用户更好地区分信息,提高界面的可读性和可用性。
设计师可以通过使用互补色、明暗对比或者冷暖色对比等方式实现色彩对比,在吸引用户注意力的同时,提高界面的可视性。
4.考虑色盲用户的需求色盲用户在人机交互界面设计中也是很常见的,而且对于他们来说,区分某些颜色是一件困难的事情。
因此,设计师需要考虑色盲用户的需求,在设计中使用明亮的对比色和明确的标签来区分界面元素。
5.使用色彩心理学色彩心理学研究了色彩和情感之间的关系,可以帮助设计师选择合适的颜色来达到特定的设计效果。
例如,蓝色可以通过传达信任和稳定的情感,增强用户对界面的信任感。
而红色则可以通过传递紧急和行动的情感来提醒用户采取行动。
6.参考品牌色彩许多公司或品牌都有自己的品牌色彩,这些色彩通常与其品牌形象和公司价值观相关联。
在人机交互界面设计中,采用品牌色彩可以帮助用户与品牌建立更紧密的联系,并提升用户体验。
7.根据目标用户选择色彩不同的用户群体对于色彩有不同的喜好和感受。
教你如何美化Labview界面
技巧四 : 如何实现动态加载App
如何实现动态加载App
ini 配置文件
图标文件
LabVIEW VI 程序集
子面板
技巧五 : 拖拽效果的实现
拖拽效果的实现
锦上添花 – 如何使 iVIEW 边框半透明
NI 软件研发工程师 刘迪搏
LabVIEW强大的外交能力
• Call Library Function
透明色的使用
技巧二 : 界面分层
Tab 控件分层
iVIEW 界面的分层
Button 透明层 图标显示层 子面板层 背景层 (作为iVIEW的背景图片) (用于动态调用各App) (用于响应鼠标的事件) (使用Picture控件)
技巧三 : 程序架构
生产者 / 消费者循环
改进生产者 / 消费者循环
巧夺天工–iPhone 界面DIY
自我介绍
• 毕业于清华大学汽车工程系 • 6年LabVIEW使用经验 • 目前担任NI技术市场工程师
Email : bin.zhou@
究竟能做出怎样的界面?
实现iPhone功能的几个关键技巧
NI 技术市场工程师 周 斌
ห้องสมุดไป่ตู้
技巧一 : 巧用透明
透明色的使用
窗口间谍visualstudiotools?查看窗口样式?查看窗口消息?修改部分窗口属性老版本实现新版本构思由c创建的wsexlayered窗口作为边框新版本实现labview新版本实现c?载入指定的边框图片?创建dcdevicecontext并关联图片?创建wsexlayered窗口并设置其父窗口为传入的labview窗口?用创建好的dc更新窗口?updatelayeredwindow
• UpdateLayeredWindow(…)
LabVIEW的高级编程技巧
LabVIEW的编程技巧本章介绍局部变量、全局变量、属性节点和其他一些有助于提高编程技巧的问题,恰当地运用这些技巧可以提高程序的质量。
8.1局部变量严格的语法尽管可以保证程序语言的严密性,但有时它也会带来一些使用上的不便。
在LabVIEW这样的数据流式的语言中,将变量严格地分为控制器(Control)和指示器(Indicator),前者只能向外流出数据,后者只能接受流入的数据,反过来不行。
在一般的代码式语言中,情况不是这样的。
例如我们有变量a、b和c,只要需要我们可以将a的值赋给b,将b的值赋给c等等。
前面所介绍的LabVIEW内容中,只有移位积存器即可输入又可输出。
另外,一个变量在程序中可能要在多处用到,在图形语言中势必带来过多连线,这也是一件烦人的事。
还有其他需要,因此LabVIEW引入了局部变量。
8.1.1局部变量的创建我们在框图上设置三个变量,两个控制器分别为Numeric和Numeric 2,现在增加局部变量。
选择Function→Structures→Local Variable 然后将其拖到框图上,就可得到一个代“?”的图标,下一步将其与框图中已有的变量建立关联,有鼠标右键单击图标,进入Select Item 选择“input1” ,最后框图就变成了图7-1右边的样子。
图7-1局部变量的创建局部变量只是原变量的一个数据拷贝,但是它的属性可以修改,并且这种改变不会影响原变量。
例如上图中的这个局部变量可以利用快捷菜单中的Change To Read 变成一个指示器。
这样的一对变量的组合,就使它既可读又可写了。
局部变量有三种基本的用途:控制初始化、协调控制功能、临时保存数据和传递数据。
下面我们通过练习来说明。
8.1.2 应用举例练习8-1 用一个开关控制两个循环]该练习中有两个While 循环,现在我们用一个开关同时控制它们的运行。
面板与框图如上所示。
在左边的一个循环中设定了一个开关。
右边的循环中做了这个开关的局部变量。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
五彩生辉——LabVIEW界面配色秘诀
NI资深应用工程师潘宇
注:本文为LabVIEW网络讲坛系列短片的技术文档,第一部《界面风云》中将主要讲述在LabVIEW中创建用户界面的方法与技巧。
众所周知,在自然界中存在着各种各样的色彩,正是由于这些靓丽的色彩,才使得生活环境变得美好。
大家可以想象一下,如果这个世界上只有灰和白,那么世界会变成什么样子?
然而,有很多出类拔萃的LabVIEW编程人员,他们在技术方面往往具有很强的判断力和出色的创造性,但是,在程序的界面配色上,却始终如图1所示的那样,全灰色的单调界面。
图1.单调的灰色界面
相比之下,如果能够合理地搭配颜色,对于界面来说会有事半功倍的效果,真正做到五彩生辉,如图2。
要知道,当我们距离界面较远的时候,我们所看到的并不是排版,也不是控件,而是色彩。
那么,究竟该怎样来使用色彩呢?总体来讲,色彩是一个很主观的概念,可谓“仁者见仁、智者见智”,不同的人有着自己不同的配色标准。
但是,既便如此,对于色彩的设计还是有一些共同的标准和前人的经验可以借鉴的。
图2.色彩丰富的LabVIEW
界面
图3.“总体协调,局部对比”的配色方案
首先,就是配色总体的应用原则,即“总体协调,局部对比”,也就是:整体色彩效果应该是和谐的,只在局部的、小范围的地方可以有一些强烈色彩的对比。
以图3的程序为例,首先我们确定了主基调为蓝色,那么整个应用程序的前面板对象都用深浅不同程度、不同饱和度的蓝来表示不同的对象。
但是,局部地方,可以使用一些明亮的红色、黄色、绿色等,与背景白色形成明显对比,突出需要强调的各个地方。
其次,在前面板中巧妙地使用透明色往往也会起到神奇的作用,在图4中,通过透明色,我们可以将一个基本的波形图控件(上图)转换为一个更为美观的显示方式(下图);而在图5中,则可以通过将按钮控件设为透明来实现自定义按钮外观的效果。
这两个应用的具体步骤请参考视频内容。
图4.使用透明色改观波形图控件
最后,在这里还有一些技巧和经验分享给大家:
一. 所有不用显示前面板的子VI 前面板可以让它保持LabVIEW 的默认灰色,以方便区分主VI 和子VI 。
二. 对于红、黄、绿色,要遵循工业的通用习惯。
比如,红色一般用于指示紧急情况,拉响警报;黄色一般用于引起重视,作为警告;绿色则一般用于表示工作正常。
三. 黑与白永远是最经典的颜色,所以对您的背景进行美白或美黑,再结合小面积的亮色,您会有惊喜的发现。
图5.
使用透明色修改按钮外观。