【发布时间】:2012-03-08 18:50:23
【问题描述】:
我有一个 Labview VI,我打算通过 ActiveX 从 Matlab 运行。它有一个参数(即一个 Labview 控件),它是一维数值数组类型。
通过 ActiveX 从 Matlab 调用 VI 的方法在previous post 中有详细说明。
我试图在运行VI之前在Matlab中设置这个数组控件的值(也就是说,Matlab将传递一个参数给VI然后运行它;不需要通过Labview界面手动执行任何操作)。
通过GetControlValue 方法获取值工作正常(我得到了一个不错的 Matlab 数组)。但是,当我尝试使用GetControlValue 返回的值设置同一个控件的值时,该控件的值变为空(从值 Empty matrix: 1-by-0 Matlab再次使用GetControlValue后得到的,在Labview中控件的值变灰了)。
当控件是单个数值时,同样的过程可以完美运行。
这里到底出了什么问题?
请看下面的屏幕截图:
【问题讨论】:
-
你试过数组指示器吗?
-
奇怪的是,在上面显示的示例中,vi.GetControlValue('z') 还返回一个空矩阵..(在使用 SetControlValue 破坏它之前,'y' 不是这种情况)。