前言

写了多年的LabVIEW程序,你是否面临这样的问题

总是在做一些重复的工作,感觉很没有意思;
总在不停的写代码,做类似的控件,实现相同的功能,丝毫没有成就感;
总在天加班,没有时间去提高自己;

你也知道简单的重复并不能带来效率的提高,却不知道走向何方,无奈而又焦急着?

小黑今天带你聊一聊LabVIEW吸星大法,让你在工作中越来越有效率,体会一切皆可掌控的妙感~

记住,我们的口号是 : 告别重复造车,你的就是我的,万物皆为我所用~

正文

学习LabVIEW是在初期是一个很吸引人的事情,它让你在极其短暂的时间内既能熟悉软件,也可以了解硬件。较短的学习周期,快速的培养人手,无论是作为学生还是项目型的公司,它都是快速产生价值的一个选择。

然而,像传统武学一样,凡是入门快的功夫都很难提高。过于花哨的招式脱离了稳扎稳打的内功,只能沦为高不成低不就的工具。

LabVIEW使用者通过一个月左右的学习就能介入小项目,却在一到两年左右的时候就会陷入瓶颈,如果没有看到更远的方向,将很长时间内停留于某一阶段。

今天小黑带你开一扇们,让你在迷茫期可以迅速的积淀自己的实力,等到机会来的时候,可以快速的实现自己的目标。

不废话啦,今天给大家讲解的就是UI Control的个性化自定义,兼容并济,吸收各家所长。

什么是UI Control的个性化

一个软件极致便是高度的自定义化,LabVIEW对自定义的支持使得其成为了一个平台,吸收着各个厂商为其定义的软硬件驱动。而作为一个程序员,如果不能利用其高度可定义的环境,其编程将会不停的沦为重复造车的过程。

使用UI Control的个性化,将你欣赏的,喜欢的控件,全部集成到LabVIEW去。每个人都将有一套属于自己的设计库,这个设计库是个人经验+工作经验的集合,能让在遇到复用情境时,可以快速的使用原有积累,避免重复造车。

UI Control的个性化到什么程度

为了让大家了解到UI Control的个性化程序,小黑将自己的控件选板贴图如下。该选板名称为Elton Ctrl(其中Elton是小黑的英文名字,所以这个选板就是小黑专属选板~),其设计思想包括以下几点:

1. 该选板以系统控件为基准,便于在不同的操作系统中建立统一控件风格,即所有设计的软件统一风格,保持团队或者个人风格的一致


2. 该选板在系统控件的基础上,增加自定义内容,增强系统控件功能,其中浅绿色部分是我的控件修改部分,实现了功能增强

3. 该选板集成Quick Drop控件群,可以实现相似控件一键放置,并集成UI Suite,对整体布局控件批量放置
 4. 该选板集成额外的控件,在遇到好的控件时,都可以快速添加到自己的选板中

如何添加属于自己的控件

接下来,我进一步讲解其设计过程,如果你有心,也可以建立属于自己的控件库,吸收各家所长,实现下图所示的控件群。

  • 吸星大法之素材搜集

如果你找不到好看的控件,天天看到的都是LabVIEW自带控件,那么基本上告别自定义的开始。控件的自定义收集主要来源于三点:
1. 从别人的程序中吸收,尤其是UI界面做的漂亮的程序

如果学习LabVIEW程序设计有一定时间,那你一定收集了不少程序,把别人程序中好看的控件保存下来吧,将来总会用的上。关于如何制定控件,如何收集等基础内容就不再这里赘述了,大家可以自行百度。

2. 找到现成的控件包,拷贝到自己的目录下,将他人的内容内化为自己的
现成的控件包也比较容易获得,主要来源于VIPM和NI相关的论坛上,比如下图所示的就是VIPM中的控件

 或者从NI Community中直接搜索,里面也有不少控件下载包
 

3. 从专业的Icon网站上下载素材,可以搜集一些常用的素材下载网站,用于快速设计相同风格的控件
这里推荐 easyicon ,免费的,非常好用

  • 吸星大法之素材整理

本文为了考虑到初学者,将控件放置于用户收藏目录下,待后续高级教程讲解如何进行高级自定义。
搜集到的控件放在哪里呢? 如果不对控件的素材整理,收集到的东西基本上不会打开第二次,这里推荐大家在刚开始搜集的时候,将控件放置于user.lib下
当控件放置于该目录下后,重启LabVIEW,将自动识别放置的控件
为了保证收集有效,注意分门别类放置,规划好自己的控件目录层级
 设计好看的图标,一个漂亮的图标可以让你更愿意使用自己搜集的控件。在Tools-->Advance--->Edit Palette Setting中,可以配置文件夹的图标
如下图所示即可编辑图标选板

后记

LabVIEW吸星大法,将你喜欢的控件全部做成自己的,悉心整理归档,你将有丰富的软件积累,不必每一次都重走前人之路。

控件设计还有很多很多的注意项,这里我只是抛砖引玉,让大家植入复用的概念,建立属于自己的知识宝库,为后续的文章做一些铺垫。

如果本文对你有收获或有所感触,真心希望你能真正去尝试尝试,体会一下积累的价值,告别盲目的加班,学习成长之路,互帮互助~

术业有专攻,闻道有先后,在知识大门前,我们可以略窥一二,却不知天外有天,人外有人。保持一颗谦逊的心,专注于技术的提高,精益求精~
 
-----谨以此文献给落入LabVIEW坑却仍不放弃的各位,我们不是专业的软件工程师,却有一颗上进的心。
 
 
 
 
 




LabVIEW 吸星大法 - 看见的好东西都是我的(上篇)的更多相关文章

  1. LabVIEW 吸星大法 - 看见的好东西都是我的(下篇)

    前言 写了多年的LabVIEW程序,你是否面临这样的问题 总是在做一些重复的工作,感觉很没有意思: 总在不停的写代码,做类似的控件,实现相同的功能,丝毫没有成就感: 总在天加班,没有时间去提高自己; ...

  2. LabVIEW 吸星大法 - 看见的好东西都是我的(中篇)

    前言 写了多年的LabVIEW程序,你是否面临这样的问题 总是在做一些重复的工作,感觉很没有意思: 总在不停的写代码,做类似的控件,实现相同的功能,丝毫没有成就感: 总在天加班,没有时间去提高自己; ...

  3. 低耦合高内聚 - 不要把所有东西都放在 vuex中

    我就举一个例子.比如,我想看电视,是否需要遥控器??请认真思考这个问题. 看似电视与“我”已经解耦了.然而,我需要通过遥控器去看电视,我的目的是看电视,但是我却需要依赖遥控器这个中间件.这就变相地将“ ...

  4. 从Hello World说起(Dart)到“几乎所有东西都是Widget”小部件。

    import 'package:flutter/material.dart'; void main() => runApp(new MyApp()); class MyApp extends S ...

  5. 用LabVIEW实现《家国梦》游戏中自动收货收金币

    前几周,很流行一个手机游戏,叫<家国梦>.我在手机上玩了一两天后,发现了两个问题: 1. 收货收金币太没意思,只需要手指滑在固定的路线,一会儿就烦了 2. 怎么追赶也追不上手快的人(当然也 ...

  6. 关于Unicode,字符集,字符编码,每个程序员都应该知道的事

    关于Unicode,字符集,字符编码,每个程序员都应该知道的事 作者:Jack47 李笑来的文章如何判断一个人是否聪明?中提到: 必要.清晰.且准确的概念,是一切思考的基石.所谓思考,很大程度上,就是 ...

  7. 重置了下系统好多关于mysql密码的文章都很渣拷分好的备用

    方法1: 用SET PASSWORD命令 mysql -u root mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('newpass ...

  8. 输入URL之后都发生了什么

    输入URL之后都发生了什么 这个标题印象中已经有很多讨论了.也来说说这个话题. 从头开始,当你的电脑使用网线连接到网络的时候,我们都知道,这个时候你的电脑会获取一个IP,这个IP就是你的唯一标识了.好 ...

  9. LabVIEW有限状态机

    顺序模式是我们最先接触,也是最基本的一种编程模式, 程序按照固定的顺序依次执行,结束(如图1) 但在很多情况下,静态的顺序模式并不能满足我们编程的要求,我们需要更有效地动态结构来实时改变程序的执行顺序 ...

随机推荐

  1. Python之Web框架

    Python之Web框架: 一.  Web框架的本质: 对于所有的Web应用,本质上其实就是一个socket服务端,用户的浏览器其实就是一个socket客户端. #!/usr/bin/env pyth ...

  2. IIS性能提升

    1. 调整IIS 7应用程序池队列长度 由原来的默认1000改为65535. IIS Manager > ApplicationPools > Advanced Settings Queu ...

  3. python之系统性能信息模块psutil

    系统性能信息模块psutil 跨平台库 轻松实现获取系统运行的进程和系统利用率(包括CPU.内存.磁盘.网络等)信息. 主要用于系统监控,分析和限制系统资源及进程的管理 实现同等命令行工具提供的功能( ...

  4. MySqlNDB使用自带的ndb_setup.py安装集群

    在用Mysql做集群时,使用Mysql的NDB版本更易于集群的扩展,稳定和数据的实时性. 我们可以使用Mysql自带的工具进行集群安装与管理:ndb_setup.py.位于Mysql的安装目录bin下 ...

  5. linux 下查看cpu位数 内核等参数命令(转)

    # uname -a Linux euis1 2.6.9-55.ELsmp #1 SMP Fri Apr 20 17:03:35 EDT 2007 i686 i686 i386 GNU/Linux ( ...

  6. H5(三)

    Canvas(画布)   基本内容     简单来说,HTML5提供的新元素<canvas>     Canvas在HTML页面提供画布的功能       在画布中绘制各种图形     C ...

  7. POCO库——Foundation组件之缓存Cache

    缓存Cache:内部提供多种缓存Cache机制,并对不同机制的管理缓存策略不同实现: ValidArgs.h :ValidArgs有效键参数类,模板参数实现,_key:键,_isValid:是否有效, ...

  8. Nginx+FastCGI运行原理

    Nginx不支持对外部程序的直接调用或者解析,所有的外部程序(包括PHP)必须通过FastCGI接口来调用.FastCGI接口在Linux下是socket(这个socket可以是文件socket,也可 ...

  9. php字符串匹配

    $a='abcdef'; $b='abc'; similar_text($a,$b,$num); $num=3;

  10. QT操作EXCEL

    介绍一下最基本的QT对EXCEL的读写操作. 声明:转载于:http://blog.csdn.net/czyt1988/article/details/52121360 在使用QT的操作数据库的时候, ...