【LabVIEW开发】如何在LabVIEW主界面点击按钮,弹出一个子界面?

您所在的位置:网站首页 labview子面板调用 【LabVIEW开发】如何在LabVIEW主界面点击按钮,弹出一个子界面?

【LabVIEW开发】如何在LabVIEW主界面点击按钮,弹出一个子界面?

#【LabVIEW开发】如何在LabVIEW主界面点击按钮,弹出一个子界面?| 来源: 网络整理| 查看: 265

春风得意马蹄疾,一日看尽长安花

一、 为什么要弹出子界面?

  我们在编写上位机软件的时候,一个主界面往往无法将所有的流程图、设置选项、报警参数等所有相关的数据信息全部展现出来,这个时候子界面的重要性就体现出来了!既然是子界面,说明在软件的使用过程中,是不需要像主界面一样呢一直在桌面长时间显示的,只是在需要的时候,弹出来就可以了,使用后直接关闭,对别的界面不产生任何影响;或者PC配备双屏显示时,子界面可以拖拽到副屏上长时间显示,便于操作人员对所有信息一目了然。   其实多界面显示信息,LabVIEW还提供了选项卡功能,可以在一个主界面上切换不同的画面,以显示更多信息。但是像参数设置界面,只在使用的时候设置一下参数,使用完后就不需要了,用选项卡就不太合适;而且双屏显示的时候,子界面可以放在副屏上显示,选项卡却不行。这些,都是弹出子界面的优势!   那么,LabVIEW到底如何才能弹出子界面呢?下面我们通过一个实例,来比较详细地讨论一下。

二、实战练习

  先说下我的例子大概是个什么框架,既然我们要弹出子界面,那么必然会有一个主界面。我先创建一个主界面VI程序,然后再创建两个子界面的VI程序,点击主界面上第一个按钮,第一个子界面就会弹出来运行;再点击第二个按钮,第二个子界面也会弹出来运行;为了方便2个子界面之间进行数据交换,我还创建了一个全局变量。项目结构如下图所示:

项目浏览器

  项目浏览器中“主VI”对应主界面,2个“子VI”对应相应的子界面,结构还是比较简单的,下面我们来看看具体是如何实现的。

①主界面(主VI)程序

  主界面(主VI)前面板比较简单,就是放了两个确定按钮,如下图所示:

主VI前面板

  主VI程序面板如下图所示,点击按钮就弹框,很明显我们要使用事件结构,2个按钮对应两个事件结构,两个事件结构的程序基本一样(下图中只给出了2#按钮对应事件结构的程序)。

主VI程序面板-1 主VI程序面板-2   上面的程序也比较简单,我简单解释一下:首先使用“文件I/O”--“文件常量”--“路径常量”里的路径常量来对子VI进行调用,然后就是使用“打开VI引用”,之后再判断子VI的前面板状态;如果前面处于“Closed”状态,就打开子VI前面板并处于标准模式状态,接着就开始运行子VI,也就是说,弹出来的子VI界面是直接进入运行状态的;如果前面不处于关闭状态,那么就将子界面置于最顶层。主VI的程序主要用的到的控件模块是 “应用控制程序”模块中的“属性节点”和“调用节点”,如下图所示: 应用控制程序--面板

  “FP”指的就是“前面板”,整个程序也比较简单。

②子界面(1#子VI)程序

  1#子VI的前面板界面也比较简单,也就一个数值显示框和一个停止按钮,我们主要是为了举例,所以能简单就尽量简单。

1#子VI前面板

  我们在看一下1#子VI的程序面板:

1#子VI程序面板

  2#子VI前面板与1#子VI前面板基本一样,就不多赘述了,程序面板稍稍有点不一样,就是将全局变量的值赋给2#子VI的数值显示框,从而达到将1#子界面的随机数传递给2#子界面的数值显示框。2#子VI程序面板如下图所示:

2#子VI程序面板 ③运行结果

  运行主VI程序,然后分别点击主VI前面板上的两个确定按钮,分别弹出来两个子界面,对应相应的子VI程序,弹出来的子界面是自动运行的;由于全局变量将值赋给2#子界面时有延迟,所以我截图时两个子界面显示的随机数不一样,实际显示的结果时一前一后一样的数据,时间间隔很短,感兴趣的朋友可以想想用啥办法将延迟消除,使两个子界面显示的数据一摸一样(0延迟)

运行结果 三、小结

  1 .我使用的开发环境是:Win10,LabVIEW2017(32位)   2 .其实弹出子界面的方法比较简单,程序也比较少;自己动手试一试就可以完全掌握了   3 .弹出的子界面以及主界面的显示位置都是可以设置的,我一般将弹出的子界面设置在副屏,主界面默认在主屏显示;显示位置的设置在每个程序的“VI属性”里,可以根据自己的需要灵活设置。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3