前言

近期,小黑在写程序的时候,经常会遇到一些重复性的工作。尤其是在写到QMH(Queued Message Handler)程序时,经常需要创建UI界面上的一些控件引用,并且在程序中捆绑成簇使用。

今天,小黑将以JKI StateMachine来介绍脚本编程,通过一些脚本编程来简化机械开发,让自己的程序6的飞起。

设计说明

JKI状态机中,在 "Initialize Core Data" 分支里,我们通常需要初始化一些数据,当涉及到UI界面上属性的一些变化时,需要将引用作为关键数据结构存储。

这时,创建引用以及引用的数据结构将会非常机械,每次操作都会是一次重复劳动。
 细数我们的重复劳动主要包括以下几点:
0.整理控件
如果你不会用快捷键,整理控件是一个考验耐心的活动....
1.为每一个控件创建引用
这里在高版本的LabVIEW中,你可以一键创建所选控件的引用,而在低版本LabVIEW中,是无法一起创建的。重复为每一个控件创建引用将是比较繁琐的工作。
2.为每一个控件引用创建常量,作为数据结构
当你创建引用后,你需要一个簇常量来定义你的结构,这时右键也没有相关的操作可以实现快速创建常量。
 
你不得不一个个为其创建引用常量

3.创建完毕后,你需要将其控件引用整理,并且一一对应初始化,如果赋值顺序弄错,这也是比较闹心的
为此,小黑非常希望自己可以一键创建相关的内容,可以解决如上的烦恼

设计目标

发现问题是解决问题的开始,自从有这个需求后,小黑变开始学习脚本编程,希望通过自动化的程序,实现如下的步骤:
1.自动整理控件,所有标签放置于左侧
2.自动创建控件引用,并且排列顺序和控件顺序一致
3.自动创建引用的簇常量

设计结果

经过设计后,小黑成功实现了如下的功能,再也不用担心控件多,不用担心控件的引用创建问题啦:
UI设计完成后,程序框图如下:
 通过脚本编程,一键实现如下功能:
选中需要创建引用的控件
弹出QuickDrop窗口

使用快捷键创建脚本,一键搞定,轻松又愉快
 特别是涉及到大量的控件引用需要创建时.....这就是神器....

那如何开始脚本编程呢?

第一步:打开脚本编程

在Option-->VI Server中勾选VI Scripting ,你将开启脚本编程之旅

这时,你的Application Control将会多出VI Scripting 选板,增加了脚本编程所必须的一些函数
你将会增加一些Scripting的属性和方法,也将可以创建一些蓝色的属性节点


第二步:掌握脚本编程

置于如何掌握脚本编程,这就同你如何掌握LabVIEW开发一样,通过源码的阅读是最快的途径
D:\Program Files (x86)\National Instruments\LabVIEW 2015\resource\dialog\QuickDrop\plugins\ 

读取源码,了解脚本编程的奥秘
 
通过脚本编程的练习,你将写出各种各样的工具,来实现自己快速编程的想法,想想也是蛮有趣的。

后续我将会抽时间介绍一些脚本编程常用的开发技巧~

后记

如果你对我之前开发的工具包感兴趣,我也开发了一个安装包可以使用,LabVIEW 2015版本支持(低版本的没做成工具包,需要手动安装,最低2013版本)

如果想要此工具包,可以后台联系我。需要注意的是:尊重劳动成果,工具包会收取一些费用,如果有必要再询价获得~

 

 

 

 

【VI Script】你不知道的脚本编程的更多相关文章

  1. Shell脚本编程(一):初识shell script

    Shell简介 Shell是一个命令解释器,它是一个用 C 语言编写的程序,它是用户使用 Linux 的桥梁.Shell 是指一种应用程序,这个应用程序提供了一个界面,用户通过这个界面访问操作系统内核 ...

  2. SHELL脚本编程的常识和VI常用技巧

    来源:http://mprc.pku.edu.cn/mentors/training/TrainingCourses/material/ShellProgramming.HTM#_Toc3751808 ...

  3. shell script 脚本编程

    介绍 Shell脚本编程30分钟入门 Shell 教程 Linux 的 Shell 种类众多,常见的有: Bourne Shell(/usr/bin/sh或/bin/sh) Bourne Again ...

  4. Bash脚本编程基础

    为实现某个任务,将许多命令组合后,写入一个可执行的文本文件的方法,称为Shell脚本编程. 按照应用的Shell环境不同,可以将Shell脚本分为多种类型.其中最常见的是应用于Bash和Tcsh的脚本 ...

  5. Shell脚本编程学习入门 01

    从程序员的角度来看, Shell本身是一种用C语言编写的程序,从用户的角度来看,Shell是用户与Linux操作系统沟通的桥梁.用户既可以输入命令执行,又可以利用 Shell脚本编程,完成更加复杂的操 ...

  6. 【Shell脚本编程系列】知识储备以及建立规范的脚本

    前言 学习shell脚本编程需要的知识储备: vi/vim编辑器命令 vimrc设置要熟练 基础命令,100多个要熟练 基础和常用的网络服务命令要会:nfs . rsync. inotify . la ...

  7. Shell脚本编程与文件系统修复

    导读 Linux基金会发起了LFCS认证(Linux 基金会认证系统管理员)Linux Foundation Certified Sysadmin,这是一个全新的认证体系,旨在让世界各地的人能够参与到 ...

  8. Shell脚本编程30分钟入门

    Shell脚本编程30分钟入门 转载地址: Shell脚本编程30分钟入门 什么是Shell脚本 示例 看个例子吧: #!/bin/sh cd ~ mkdir shell_tut cd shell_t ...

  9. linux(七)__shell脚本编程

    一.什么是shell脚本 shell除了是命令解释器之外还是一种编程语言,用shell编写的程序类似于DOS下的批处理程序. 它是用户与操作系统之间的一个接口. shell脚本语言非常擅长处理文本类型 ...

随机推荐

  1. poj 1018 Communication System (枚举)

    Communication System Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 22380   Accepted:  ...

  2. JS详细图解全方位解读this

    JS详细图解全方位解读this 对于this指向的理解中,有这样一种说法:谁调用它,this就指向谁.在我刚开始学习this的时候,我是非常相信这句话的.因为在一些情况下,这样理解也还算说得通.可是我 ...

  3. 史上最简单的 MySQL 教程(十五)「列属性 之 自动增长」

    自动增长 自动增长:auto_increment,当对应的字段,不给值,或者是默认值,或者是null的时候,就会自动的被系统触发,系统会从当前字段中取已有的最大值再进行+1操作,得到新的字段值. 自增 ...

  4. BZOJ4009 & 洛谷3242 & LOJ2113:[HNOI2015]接水果——题解

    https://www.lydsy.com/JudgeOnline/problem.php?id=4009 https://www.luogu.org/problemnew/show/P3242 ht ...

  5. 使用snmp4j实现Snmp功能(一)

    相关链接:Snmp学习笔记使用snmp4j实现Snmp功能(一)使用snmp4j实现Snmp功能(二)使用snmp4j实现Snmp功能(三) 上一篇文章讲了Snmp的一些基本概念(Snmp学习笔记), ...

  6. ACE线程管理机制-面向对象的线程类ACE_Task

    转载于:http://www.cnblogs.com/TianFang/archive/2006/12/05/583231.html 我们在前一章中使用ACE_Thread包装时,你一定已经注意到了一 ...

  7. HDU2732 最大流

    Leapin' Lizards Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Tot ...

  8. 小米路由器设置DMZ主机 并在外网访问

    一.前提条件: 1.小米路由器 2.拥有公网IP的网络 二.步骤: 1.登陆小米路由器管理界面  miwifi.com 2.高级设置=>端口转发  页面底部的DMZ选项开启,然后选择需要映射到外 ...

  9. git如何删除本地所有未提交的更改

    stash很好用,至少不会影响 .gitignore 里面的不跟踪的文件: git add . && git stash && git stash drop ===== ...

  10. poj 3376 Finding Palindromes

    Finding Palindromes http://poj.org/problem?id=3376 Time Limit: 10000MS   Memory Limit: 262144K       ...