如何控制在LabVIEW中打开子VI的前面板

更新 Dec 17, 2018

适用于

Software

  • LabVIEW

问题详述

  • 我有一个子VI,从LabVIEW中的顶层VI调用。我希望能够控制子VI的前面板在调用时是否弹出。我怎样才能做到这一点?
  • 在我的应用程序中调用子VI时,如何设置子VI的前面板?如何控制何时显示?
  • 我正在加载我的主VI,并且在运行应用程序之前,子VI会弹出一会儿。如何阻止它们弹出?

解决方案

有三个选项可用于控制子VI前面板:
  1. 将VI设置为在调用时打开其前面板

如果您希望子VI前面板的行为在每次调用时都相同,那么您将需要修改子VI的Window Appearance(窗口外观)属性。

  1. 在顶层VI的程序框图中,双击子VI图标打开。
  2. 通过执行以下操作之一打开子VI的属性:
    1. 转到File»VI Properties(文件»VI属性)
    2. 右键单击前面板或程序框图右上角的子VI图标,然后选择VI Properties(VI属性)
    3. 在子VI上,按Ctrl+I.
  3. Category(类别)下拉菜单中,选择Window Appearance 窗口外观)
  4. 单击Customize(自定义)... 按钮
  5. 在这里,您可以在左下角找到三个选项来控制子VI前面板的行为:
    • 调用时显示前面板 - 执行子VI时打开前面板
    • 如之前未打开则在运行后关闭 - 在子VI执行完毕后关闭前面板
    • 加载时显示前面板 - 将子VI加载到内存时打开前面板
 
  1. 如果要打开特定子VI实例的前面板
如果您希望在调用子VI前面板时打开它,则必须配置顶层VI。如果您的子VI多次出现在顶层VI中,并且您只希望它在某些时候打开前面板,则第二种方法非常有用。
  1. 顶层VI的框图中,右键单击子VI并选择SubVI Node Setup(设置子VI节点)。

  1. SubVI Node Setup(设置子VI节点)中您将找到四个用于控制子VI前面板行为的选项:
    1. 加载时打开前面板 - 当子VI加载到内存中时打开前面板
    2. 调用时显示前面板 - 执行子VI时打开前面板
    3. 如之前未打开则在运行后关闭 - 在子VI执行完毕后关闭前面板
    4. 调用时挂起 - 暂停执行并允许用户多次运行子VI
 
  1. 以编程方式确定前面板是否在运行时打开
要以编程方式确定前面板是否在运行时加载,您可以使用子VI框图上的调用节点来控制前面板行为。
  1. 在程序框图上为常量创建VI Server Reference(VI服务器参考) 在子VI的前面板上创建VI Refnum(VI 引用句柄)
  2. 放置一个调用节点,然后选择前面板 »打开  前面板 » 关闭打开和关闭前面板。
  3. 下图显示了如何以编程方式打开和关闭子VI的前面板。每个案例结构的错误案例都不包含任何函数。

相关信息

如果您使用的是Start Asynchronious Call VI,请确保其连接器窗格与您正在呼叫的VI的连接器窗格相匹配。阅读更多关于在LabVIEW帮助中异步调用VI和收集结果的信息。 LabVIEW高级架构课程也介绍了这个和其他主题。

本文是否有帮助?

无帮助