1

我正在使用 Matlab R2011a,并且正在尝试从命令行将对话框参数添加到掩码中。我在 R2013 simulink 文档中看到可以在新版本中执行此操作:

p = Simulink.Mask.get(baseComponent);
p.addParameter('Type', 'popup', ...
               'TypeOptions', {'Default values' 'Variable names' 'User defined'}, ...
               'Prompt', 'Default values', ...
               'Name', 'setDefault')

我无法在 R2011a 中使用这些命令。我应该使用什么命令在 Matlab R2011a 中执行完全相同的操作?

4

1 回答 1

0

这在旧版本的 Matlab 中是绝对可能的,无需使用对象接口,而是必须组装参数属性,然后使用set_param. 它需要按一定的顺序完成:

set_param(gcb,'MaskPrompts',maskPrompt);
set_param(gcb,'MaskStyles',maskStyles);
set_param(gcb,'MaskTunableValues',maskTunVals);
set_param(gcb,'MaskCallbacks',maskCallbacks);
set_param(gcb,'MaskEnables',maskEnables);
set_param(gcb,'MaskVariables',maskVar);
set_param(gcb,'Maskvalues',maskvalue);

某些属性可以是元胞数组,其他属性必须是指定每个值的长字符串。您应该能够通过get_param对当前具有参数的块执行 a 来快速发现哪个是哪个。!

于 2013-06-26T19:12:06.990 回答