以编程方式关闭 Stateflow 编辑器
Close Stateflow editor programmatically
有没有办法以编程方式关闭(或隐藏)Stateflow 编辑器?
我在文档或网络中找不到关于此的任何提示。我知道的唯一方法是完全关闭模型,但我不想这样做,因为更改后的模型可能需要事先保存,因此需要用户交互。
这是我目前正在做的一个简单示例:
sfr = sfroot;
% For simplicity I assume exactly one chart is found
chart = sfr.find('-isa', 'Stateflow.Chart');
% This can be used to display a chart
chart.view;
% How can the shown Stateflow Editor be closed again?
现在 chart
对象有一个 Editor
属性。但是 this 和图表对象本身都没有任何有用的成员函数。
我不受特定 Matlab 版本的约束,因此非常感谢任何帮助!
实际上有一个名为 sfclose
的 Matlab 命令可以关闭 Stateflow 图。
如果没有参数,当前活动的图表将被关闭。要关闭特定图表,必须传递其名称。该名称由不包括模型名称的完整路径组成。要关闭图表 model/sys1/sys2/chart
,命令如下:
sfclose('sys1/sys2/chart')
注意:不幸的是,如果搜索短语 "sfclose" 或 "close chart",则只能在文档中找到此命令。其他任何事情都会导致不相关的结果。
有没有办法以编程方式关闭(或隐藏)Stateflow 编辑器?
我在文档或网络中找不到关于此的任何提示。我知道的唯一方法是完全关闭模型,但我不想这样做,因为更改后的模型可能需要事先保存,因此需要用户交互。
这是我目前正在做的一个简单示例:
sfr = sfroot;
% For simplicity I assume exactly one chart is found
chart = sfr.find('-isa', 'Stateflow.Chart');
% This can be used to display a chart
chart.view;
% How can the shown Stateflow Editor be closed again?
现在 chart
对象有一个 Editor
属性。但是 this 和图表对象本身都没有任何有用的成员函数。
我不受特定 Matlab 版本的约束,因此非常感谢任何帮助!
实际上有一个名为 sfclose
的 Matlab 命令可以关闭 Stateflow 图。
如果没有参数,当前活动的图表将被关闭。要关闭特定图表,必须传递其名称。该名称由不包括模型名称的完整路径组成。要关闭图表 model/sys1/sys2/chart
,命令如下:
sfclose('sys1/sys2/chart')
注意:不幸的是,如果搜索短语 "sfclose" 或 "close chart",则只能在文档中找到此命令。其他任何事情都会导致不相关的结果。