前言

写了多年的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. mybatis调用存储过程 无参、带有输入输出参数,输出游标类型的 存储

    存储过程在小公司用的不多,但是如果业务比较复杂或者性能要求比较苛刻的时候存储过程就派上用场了,ibatis的前期的一些版本貌似不支持存储过程因此我选择了mybatis来做实验. 1.无输入和输出参数的 ...

  2. tp框架实现验证码

    今天来看一个小插件. tp框架是怎么实现验证码的. 又到了我们千篇一律的时候了,首先呢,先做一个用来显示的html界面名为:zhuce.html <!DOCTYPE html PUBLIC &q ...

  3. C语言简单文法

    <源程序>→<外部声明>|<外部声明><函数体> <外部申明>→<头文件><函数声明>|其他声明 <函数体&g ...

  4. Mac OS X上搭建伪分布式CDH版本Hadoop开发环境

    最近在研究数据挖掘相关的东西,在本地 Mac 环境搭建了一套伪分布式的 hadoop 开发环境,采用CDH发行版本,省时省心. 参考来源 How-to: Install CDH on Mac OSX ...

  5. 在nginx中配置ip直接访问的默认站点

    一台机子部署多个网站,我们直接访问ip (外网内网都一样)提示无法访问或404. 因为有多个网站,我们想指定某个网站为IP访问默认的网站,如何操作呢? 解:在Listen ip:port; 这个指令行 ...

  6. win10常用帮助

    添加自启动项: C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp shell:startup win10找回图片查看器: Win ...

  7. Dev Cpp 输出中文字符问题

    最近 c++ 上机作业,vc++6.0 挂了没法用,只好用 Dev Cpp 先顶替一下,然而在遇到输出中文字符的时候出现了乱码的情况,但这种情况又非常诡异.于是简单了解了一下写成此博客. [写在前面] ...

  8. memcache的lru删除机制

    惰性删除,get时才删除 LRU原理:当某个单元被请求的时候,维护一个计数器,通过计数器来判断最近谁最少使用,那就把谁踢出去. 注:即使某个key设置的永久有效,也会被踢出来,这个就是永久数据被踢的现 ...

  9. 盘点销售一体机 打印POS一体的设备。 打印,盘点,销售PDA(手持终端)+移动销售POS软件

    一.产品介绍 本产品为一个PDA(手持终端)+移动销售POS管理软件组合.可以实现功能如下: 可以实现移动销售(销售退货).盘点.配送.移库.打印小票的功能. 销售时,可以选择客户.业务员.库房,并且 ...

  10. Codeforces Round #366 (Div. 2)

    CF 复仇者联盟场... 水题 A - Hulk(绿巨人) 输出love hate... #include <bits/stdc++.h> typedef long long ll; co ...