1、上一章主要讲了如何跑我们的第一个加法程序(这里向第一个程序的鼻祖“hello world”致敬),这一章我们直接进入主题,将我们写的程序生成exe文件放桌面运行。

2、要生成exe的话我们需要从新建工程文件开始,下面按步骤一步一步生成我们第一个Labview的exe程序。首先点击文件->新建(N)->项目

3、新建后重命名并保存该工程文件到指定文件夹。

4、保存工程文件后右键“我的电脑”->新建->VI,并按上一章的程序重新编写如下:

5、但是细心的小伙伴会发现,第一章的加法程序只能按一次运行键,程序才执行一次,那exe要怎么做到一直运行,然后我点击一下某个按键,它就能执行加法呢。写过c语言的小伙伴应该知道,要让程序一直运行,需要在main函数中添加一个while循环。(这里每一个VI都相当于一个main函数/子函数)。添加while循环如下图所示,右键程序框图->编程->结构->while循环,然后再程序框图中拖拉一个while循环的矩形框图。

6、while循环右下角有一个红色图标,该图标为while循环标志,当给该图标赋值True时,则退出while循环,False则一直执行循环。我们鼠标挪到循环图标的左侧,右键选择新建输入控件会自动生成一个布尔输入控件(布尔输入控件只有True和False两个状态)。

在前面板中可以看到新建了一个“停止”的按键,若前面板关闭了,可在程序框图的工具栏中点击窗口->显示前面板  可以打开前面板,在前面板中跳转程序框图的操作一致(或者直接Ctrl+E)。

7、点击左上角运行按键的话是可以一直运行了(点左上角红色的停止键可以停止程序)。

8、鼠标挪至该图标的左侧,右键新建一个输入控件。可以看到前面板也自动生成了该变量的一个控件。

9、我们将界面做好看一些,毕竟这可是让拿出来见人的应用程序。用鼠标或上下键盘挪好控件位置后,在前面板右键->新式->修饰->水平按钮框,并通过拖拉的方式覆盖掉我们界面上的控件。

鼠标点击刚拖拉的水平按钮框,选择工具栏中下行右侧的 “ 重新排序”->“移至后面”。

10、调整整个VI的大小,使它刚好显示完水平按钮框。然后保存VI到工程路径下的文件夹。

11、为了让程序少占用系统资源,我们可以在while循环中添加一个50ms的延时,如下如所示:

运行效果如下图所示,点击确定后加法才执行,点击停止后程序停止。但是我们希望程序点击停止后直接退出程序界面要怎么实现呢?

12、分别在程序框图中拖入  编程->应用程序控制->VI服务器引用    以及    编程->应用程序控制->调用节点    到程序框图中,位置如下所示:

13、左键点击调用节点下方的方法,选择  前面板->关闭,如图所示,即可在程序运行结束时退出程序界面。运行后点击  “停止”按键看一下效果。

14、在生成exe应用程序之前,我们需要简单配置一下显示界面。点击工具栏中的   文件->VI属性,选择为“执行”类别。将左侧的打开时运行勾选上。(其实生成应用程序后可以跳过这步,不过没关系,我们先熟悉一下labview的配置环境)

15、选择“窗口外观”类型,左侧选择自定义,点击下方自定义按钮,弹出自定义窗口,将自定义窗口中左侧选项全部取消勾选,点击确定。

16、关闭VI的程序框图和前面板,回到项目浏览器。右键点击  程序生成规范->新建->应用程序。将信息中的程序名称改成我们想要的名字,如addexe。

17、点击源文件,在点击项目文件中的add.vi,最后点击中间向右图标将add添加到启动VI中

18、点击图标,在这里可以选择我们想要的应用程序图标(.icon文件),取消左侧默认Labview图标文件,选择目标图标文件,这里我直接用默认的图标了。大家感兴趣可自行添加想要的应用程序图标。

19、点击预览,可以生成预览看一下文件结构,再点击下方的生成按键。或者不预览,直接生成也可以。生成完成后点击完成按键即可。我们可以看到生成的应用程序的路径,在该路径找到自己的应用程序。

20、双击运行应用程序,看一下效果吧,可以发送快捷键到桌面,就可以方便地运行我们的第一个exe应用程序了。后续有专门的界面修饰教程,大家可以根据自己的喜好,生成属于自己风格的应用程序。

原创不易,一键三连啦,若有不对或者讲解不到位的地方,欢迎在下方评论,我会及时更改!

labview从入门到出家2--将“加法程序”制作成“exe应用程序”的更多相关文章

  1. labview从入门到出家1--第一个加法程序

    概述: Labview在众多编程语言中排名靠后,显然在当今互联网,物联网时代并非主流语言.但是俗话说行行 出状元,即便不是立身于某个主流的领域,用好了依旧可以独领风骚,而且Labview对于硬件出身的 ...

  2. labview从入门到出家5(进阶篇)--程序调试以及labview函数库的运用

    跟了前面几章的操作流程,相信大家对labview有了一定的认识.其实只要了解了labview的编程思路,再熟悉地运用各个变量,函数以及属性,那么我们就可以打开labview的大门了.跟其他编程语言一样 ...

  3. labview从入门到出家6(进阶篇)--移位寄存器的使用

    前面介绍了如何熟悉和使用Labview自带的库函数以及调试方式,大家后期基本可以凭借这两个方式从入门到出家了,哈哈,后面就靠各位同仁99%的努力了.这篇为啥要讲移位寄存器呢,主要是之前做的项目和经验告 ...

  4. labview从入门到出家7(进阶篇)--队列的使用

    本节简单讲解队列在Labview中的使用,队列你可以认为就是一组先进先出的数据列表,在Labview中常用来缓存和传递数据.用了这么久的队列,个人认为有个方便的地方在于数据传递的把控,不管是局部变量还 ...

  5. labview从入门到出家3--制作和调用子VI

    当程序越写越大的时候,我们会发现代码界面会比较乱(线太多),那要怎么做可以让代码更简洁一点,我只管直接调用某个功能函数,而不需要在一个VI上面去实现这个功能函数呢?--子VI.好比C语言里面的Main ...

  6. labview从入门到出家9(进阶篇)--串口通讯

    ​ Labview在工控领域,如产线,实验室等环境用得较多,其中与仪器通讯控制的方式有串口(RS232,RS485,TTL),GPIB,网口,CAN等,其中串口在仪器还有单片机控制中用来调试居多.(很 ...

  7. labview从入门到出家8(进阶篇)--简单好用的状态机

    labview的状态机类似于一个软件框架的基本单元,好的软件框架和软件思路采用一个好的状态机,就如虎添翼了.这章给大家讲一个本人常用的一个状态机,基本上以前的项目都是建立在这个状态机上完成的,当然网上 ...

  8. labview从入门到出家4--用事件结构实现运算功能

    使用事件结构可以快速定位响应界面的操作事件,如按下,拖动,双击的事件.基本上我们所要实现的所有功能,都可以通过条件结构+事件结构去实现,比如后面进阶篇将会讲到的状态机就是通过条件结构和事件结构组成的. ...

  9. 将Python 程序打包成 .exe格式入门

    PyInstaller PyInstaller 是一个十分有用的第三方库,可以用来打包 python 应用程序,打包完的程序就可以在没有安装 Python 解释器的机器上运行了. 它能够在 Windo ...

随机推荐

  1. 论文阅读 Streaming Graph Neural Networks

    3 Streaming Graph Neural Networks link:https://dl.acm.org/doi/10.1145/3397271.3401092 Abstract 本文提出了 ...

  2. B+树能存多少数据?

    B+树能存多少数据? 图 MySQL B+树示意图 InnoDB页的大小默认是16KB: 假设一条记录大小为1KB,则一个数据页中可以存16条数据(忽略页中的其他数据结构) 假设主键为int,又指针大 ...

  3. 移动应用开发迎来哪些新技术?5月24日相约HDD·线上沙龙·创新开发专场

    HUAWEI Developer Day(简称HDD),是华为开发者联盟与广大开发者深度交流的平台.围绕移动终端的最新技术和产品形态,持续向广大开发者传递华为终端的最新产品和开放服务能力,结合最新的行 ...

  4. 运维:DevSecOps

    什么是DevSecOps DevSecOps 是一场关于 DevOps 概念实践或艺术形式的变革.DevOps之父Patrick Debios 强调:"DevOps2.0时代应首先解决人的问 ...

  5. wcf使用JetEntityFrameworkProvider.dll写access数据库时,报"操作必须使用一个可更新的查询"错误的解决办法

    由于users用户组无权重写access数据库,需要设置users组用户能读写access数据库.

  6. 150. Evaluate Reverse Polish Notation - LeetCode

    Question 150. Evaluate Reverse Polish Notation Solution 2 1 + 3 * 是((2+1)*3)的后缀(postfix)或逆波兰(reverse ...

  7. unity---公共模块MonoController

    公共模块 如果有很多类使用Update()函数,会导致性能浪费 如果函数统一在一个Update()中执行 代码 上述,需要将脚本挂载到物体上, 故新建了一个管理类MonoMgr Mgr另外的作用 可以 ...

  8. 144_Power Pivot贷款之等额本息与等额本金

    博客:www.jiaopengzi.com 焦棚子的文章目录 请点击下载附件 一.背景 买房贷款的时候会遇到等额本息与等额本金的问题,今天做了一个两者对比,看看如何选择,来一张对比图. 等额本息的前期 ...

  9. 如何实现将拖动物体限制在某个圆形内--实现方式vue3.0

    如何实现蓝色小圆可拖动,并且边界限制在灰色大圆内?如下所示 需求源自 业务上遇到一个组件需求,设计师设计了一个"脸型整合器"根据可拖动小圆的位置与其它脸型的位置关系计算融合比例 如 ...

  10. 如何在 pyqt 中自定义工具提示 ToolTip

    前言 Qt 自带的工具提示样式不太好看,就算加了样式表也时不时会失效,同时工具提示没有阴影,看起来就更难受了.所以本篇博客将会介绍自定义工具提示的方法,效果如下图所示: 实现过程 工具提示其实就是一个 ...