必需: VI脚本

虽然用户可以使用新建VI对象函数和接线端:连线方法创建复杂VI对象,但是这种方法需要复杂而庞大的脚本代码,编写起来很费时,而且难以读取。使用模板VI较为简便。在模板VI的基础上,根据实际需要向模板新增内容,或修改模板中的现有内容。

使用的对象

VI脚本任务需用到下列对象:

操作步骤

准备:关于下列步骤的范例,见labview\examples\Application Control\VI Scripting\Creating VIs目录下的Creating New VI From Template VI。

  1. 设计一个模板VI,模板VI的功能和形式应尽可能地接近目标VI。

    模板的设计应考虑下列因素:

    • 不希望通过编程一次创建一个的对象
    • 不希望从零开始创建的连接
    • 运行时指定的占位符对象。占位符对象就是在VI中实现完整连线的对象,用户不必通过编程从零开始开始各个对象。
    • 所有对象上的可见标签,用于定位或修改对象

    范例详细信息

    在该例中,模板包括数组输入、数值输出、占位子VI,以及相关的连线。运行时,脚本VI可将占位子VI替换为实际需要的子VI。

    注: 占位子VI的连线板和最后替换占位子VI的连线板模式完全一致。保持完全一致的连线板可避免重新连线。如占位子VI和实际子VI的连线板不同,LabVIEW可能会误连线。
  2. 将模板VI的路径连线至新建VI函数,创建模板VI的副本。

    可使用路径控件、路径常量,或在模板VI引用上使用VI: VI路径属性,指定模板VI的路径。

    范例详细信息

    在该例中,“VI: VI路径”属性提供模板VI的路径。

  3. 获取模板VI中要修改的对象的引用。最常见获取模板VI中对象引用的方法是使用打开VI对象引用函数。

    范例详细信息

    在范例中,脚本VI必需将占位子VI替换为实际执行计算功能的子VI。打开VI对象引用函数通过占位子VI的标签可打开子VI的引用。

  4. 检查和修改引用对象。

    关于使用VI脚本编辑VI的详细信息,请参考常见脚本任务列表

    范例详细信息

    在该例中,脚本VI使用替换方法将占位子VI替换为能够执行用户指定计算任务的子VI。根据运行时运算按钮的值,条件结构将占位子VI替换为“加”或“乘”VI。

  5. 使用关闭引用函数,在引用使用结束时关闭各个对象引用。

    范例详细信息

    在该例中,脚本VI关闭替换VI和目标VI的引用。脚本VI不关闭原占位子VI的引用,因为替换方法已经关闭了占位VI的引用。

说明和建议

  • 创建一个返回所需引用的中间子VI - 对于修改模板的VI脚本应用程序,可将获取引用的代码独立出来。要单独创建一个返回引用的子VI,在新建的子VI中执行步骤2-4,而不是在脚本VI中执行。脚本VI可通过新建子VI返回的引用对引用进行修改。
  • 关闭所有打开的引用 - 打开太多引用会影响VI的速度。关于更多性能详情,请参考关闭VI和对象引用

其他范例

关于新建VI的范例,见labview\examples\Application Control\VI Scripting\Creating VIs目录下的Creating New VI From Scratch VI。该范例没有使用模板VI,因此代码较为复杂。