通过VI脚本从模板新建VI
- 更新时间2025-08-27
- 阅读时长4分钟
必需: VI脚本
虽然用户可以使用新建VI对象函数和接线端:连线方法创建复杂VI对象,但是这种方法需要复杂而庞大的脚本代码,编写起来很费时,而且难以读取。使用模板VI较为简便。在模板VI的基础上,根据实际需要向模板新增内容,或修改模板中的现有内容。
使用的对象
VI脚本任务需用到下列对象:
操作步骤
准备:关于下列步骤的范例,见labview\examples\Application Control\VI Scripting\Creating VIs目录下的Creating New VI From Template VI。
- 设计一个模板VI,模板VI的功能和形式应尽可能地接近目标VI。
模板的设计应考虑下列因素:
- 不希望通过编程一次创建一个的对象
- 不希望从零开始创建的连接
- 运行时指定的占位符对象。占位符对象就是在VI中实现完整连线的对象,用户不必通过编程从零开始开始各个对象。
- 所有对象上的可见标签,用于定位或修改对象
范例详细信息
在该例中,模板包括数组输入、数值输出、占位子VI,以及相关的连线。运行时,脚本VI可将占位子VI替换为实际需要的子VI。
注: 占位子VI的连线板和最后替换占位子VI的连线板模式完全一致。保持完全一致的连线板可避免重新连线。如占位子VI和实际子VI的连线板不同,LabVIEW可能会误连线。 - 将模板VI的路径连线至新建VI函数,创建模板VI的副本。
可使用路径控件、路径常量,或在模板VI引用上使用VI: VI路径属性,指定模板VI的路径。
范例详细信息
在该例中,“VI: VI路径”属性提供模板VI的路径。
-
获取模板VI中要修改的对象的引用。最常见获取模板VI中对象引用的方法是使用打开VI对象引用函数。
范例详细信息
在范例中,脚本VI必需将占位子VI替换为实际执行计算功能的子VI。打开VI对象引用函数通过占位子VI的标签可打开子VI的引用。
- 检查和修改引用对象。
关于使用VI脚本编辑VI的详细信息,请参考常见脚本任务列表。
范例详细信息
在该例中,脚本VI使用替换方法将占位子VI替换为能够执行用户指定计算任务的子VI。根据运行时运算按钮的值,条件结构将占位子VI替换为“加”或“乘”VI。
- 使用关闭引用函数,在引用使用结束时关闭各个对象引用。
范例详细信息
在该例中,脚本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,因此代码较为复杂。