Is the Model Workspace dirty?
显示 更早的评论
Is there a programatic way to determine if the model workspace is dirty, which is indicated by an asterisk next to "Model Workspace" in the model explorer?
采纳的回答
更多回答(1 个)
To determine if the model is dirty:
This means a model has changes that are unsaved.
x = get_param( gcs, 'ModelWorkspace' )
x.isDirty
or
bdIsDirty( gcs )
or
isDirtyOff = strcmp( get_param( gcs, 'Dirty' ), 'off' )
or
isDirtyOn = strcmp( get_param( gcs, 'Dirty' ), 'on' )
To set the dirty bit:
This will trick Simulink to think there are changes that are unsaved.
examples:
- if you want to save a changed view when there has been no material changes to the model; or
- you opened or closed some tabs and want to save that change in state when there has been no other material changes to the model.
x = get_param( gcs, 'ModelWorkspace' )
x.isDirty = 1;
or
set_param( gcs, 'Dirty', 'on' )
To save the model:
save_system( gcs )
To close the model:
close_system( gcs )
To save and close the model:
close_system( gcs, 1 )
类别
在 帮助中心 和 File Exchange 中查找有关 Programmatic Model Editing 的更多信息
产品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!