能否在VI中通过编程的方式来改变写入控件的默认值吗
主要软件:
主要软件版本: 8.0
主要软件修正版本: N/A
次要软件: N/A
问题: 我希望能够不用打开或运行VI,就可以将一些信息写入到该VI的控制或显示控件里,并将这个值设为缺省值。该怎么做呢?
解答: 你需要在另一个VI中打开目标VI的一个引用. 在下面这个例子中,主VI (set_value.vi)打开一个引用并将值写入到目标VI(write_to_me.vi) 中去。主vi使用属性节点来打开目标vi的前面板引用,随之而获得前面板上的输入/显示控件的值。
打开你的主vi并按下列步骤操作:
- 通过把目标vi的路径传给 Open VI Reference.vi,打开目标文件的引用。
- 创建一个新的vi类属性节点,打开对vi前面板的引用.
- 将前面板引用连接到一个新的属性节点上,并使用这个节点打开在前面板上的输入/显示控件引用的数组.
- 将这个引用数组连接到一个for loop中.
- 你可以使用for loop 来索引目标vi上的输入/显示控件,并根据它们各自的标签来分情况处理。
- 因为输入/显示控件的值有一个变量类型,使用To More Specific Class VI 去表明你实际想要写入的输入/显示控件的类型,例如integer, string, waveform等。
- 在希望写入信息到输入/显示控件的情况下,你可以使用属性节点把值写入到指定的输入/显示控件的值的属性节点中去。
- 可以设定你写入的值为默认值,通过一个Make Current Value Default Invoke节点将目标vi引用的默认值设定好。
- 通过目标vi引用连线到Save Instrument Invoke Node,保存目标vi。
注意: Save Instrument Invoke Node 没有包含在运行引擎中(如果你在一个没有安装labview开发环境的系统下运行这个vi的可执行程序或是dll库函数,是无法正常运行的)。这个在labview help文档中有相关的说明。
- 关闭引用并捕捉任何可能的错误。
(如果要看更详细的解释,请参考附件的例子.)
相关链接:
附件: - set_value.vi
- write_to_me.vi
- steps1-3.jpg
- steps4-9.jpg
- step10.jpg
报告日期: 09/11/2006
最近更新: 09/23/2007
文档编号: 41AD9O4G
Other Support Options
Ask the NI Community
Collaborate with other users in our discussion forums
Request Support from an Engineer
A valid service agreement may be required, and support options vary by country.