Labview–主界面和子界面的自由切换

刚学习labview时,往往都只需要一个界面,一个程序就够了。但是到后来做一个较大的项目时,我们会发现一个界面是远远不够的。那么怎么才能实现主界面和子界面的自由转换呢?

1.那先介绍一下主界面和子界面自由转换所需要的控件和选择功能吧!

(在这里我们把按键作为触发主界面到子界面的条件)

第一个:在程序框图界面–>应用程序控制–>vi服务器引用。找到这个控件就能对本vi进行控制。

labview 操作mysql labview 操作者与子面板_子程序

第二个:在程序框图界面–>应用程序控制–>属性节点

选择好属性节点后,将“本vi”与属性节点相连,然后右键选择属性节点为:全部转化为写入,点击属性节点,选择要控制的方向。在这里我们要控制的前面板,所以选择前面板窗口–>状态。

如图:

labview 操作mysql labview 操作者与子面板_labview 操作mysql_02


然后右键属性节点,选择创建常量,里面有Invlid(无效的),Hidden(隐藏的),maximized(最大化的)等等多个选项。

第三个:

关于被调用的子vi的设置,当触发之后,我们可以发现主界面消失了,但是子界面并没有跳出来,这是因为没有设置子vi节点。

右键子vi,选择如图

labview 操作mysql labview 操作者与子面板_控件_03


labview 操作mysql labview 操作者与子面板_labview 操作mysql_04


2.那介绍完所用的控件之后,我们就来真正的实现一下吧!

从主界面跳转到子界面

labview 操作mysql labview 操作者与子面板_控件_05


从子界面跳转回主界面

需要在子程序结束运行时,设置一个布尔变量传回主界面,从而控制主界面恢复标准。

labview 操作mysql labview 操作者与子面板_控件_06


所以其实大家也感受到这样做的实际的效果就是把主界面前面板的隐藏和显示,其实主程序会一直在执行。如果大家想做的更好,就是把子程序结束时也加上一个前面板的隐藏,那么桌面上始终就只会有一个界面的存在。

例如这样(但是有的时候会造成一些时序的错误,具体原因我也没搞明白,但是在不复杂的子程序里应该是可以的)

labview 操作mysql labview 操作者与子面板_右键_07