matlab版本兼容,版本兼容性结果对象

这篇博客介绍了如何在MATLAB中创建和管理工具箱的出厂设置树,包括创建函数`createMyToolboxFactoryTree`来定义设置,创建升级程序对象函数`createMyToolboxSettingsFileUpgraders`来处理设置变更,以及创建`settingsInfo.json`文件来指定设置组和升级函数。此外,还展示了如何加载和修改设置,以及如何处理版本升级时的设置迁移。
摘要由CSDN通过智能技术生成

创建函数 createMyToolboxFactoryTree,该函数为工具箱 mytoolbox 创建出厂设置树。

function myToolboxFactoryTree = createMyToolboxFactoryTree()

myToolboxFactoryTree = matlab.settings.FactoryGroup.createToolboxGroup('mytoolbox', ...

'Hidden',false);

toolboxFontGroup = addGroup(myToolboxFactoryTree,'font','Hidden',false)

addSetting(toolboxFontGroup,'MyFontSize','FactoryValue',11,'Hidden',false, ...

'ValidationFcn',@matlab.settings.mustBeNumericScalar)

addSetting(toolboxFontGroup,'MyFontColor','FactoryValue','Black', ...

'Hidden',false,'ValidationFcn',@matlab.settings.mustBeStringScalar);

end

使用空的设置文件升级程序对象创建函数 createMyToolboxSettingsFileUpgraders。

function upgraders = createMyToolboxSettingsFileUpgraders()

upgraders = matlab.settings.SettingsFileUpgrader.empty;

end

为工具箱创建 settingsInfo.json 文件。指定 mytoolbox 为根设置组名称,createMyToolboxFactoryTree 为设置树创建函数,createMyToolboxSettingsFileUpgraders 为设置树升级函数。将 settingsInfo.json 放入工具箱 resources 文件夹中。

{

"ToolboxGroupName" : "mytoolbox",

"Hidden" : false,

"CreateTreeFcn" : "createMyToolboxFactoryTree",

"CreateUpgradersFcn" : "createMyToolboxSettingsFileUpgraders"

}

将包含设置树创建函数和工具箱 resources 文件夹的文件夹添加到 MATLAB® 路径。然后,加载 mytoolbox 的出厂设置树。

matlab.settings.reloadFactoryFile('mytoolbox');

使用 settings 函数访问设置树的根,并为 MyFontSize 设置设置个人值。

s = settings;

s.mytoolbox.font.MyFontSize.PersonalValue = 15;

将 createMyToolboxFactoryTree 中的设置名称更改为 FontSize 和 FontColor。

function myToolboxFactoryTree = createMyToolboxFactoryTree()

myToolboxFactoryTree = matlab.settings.FactoryGroup.createToolboxGroup('mytoolbox', ...

'Hidden',false);

toolboxFontGroup = addGroup(myToolboxFactoryTree,'font','Hidden',false)

addSetting(toolboxFontGroup,'FontSize','FactoryValue',11,'Hidden',false, ...

'ValidationFcn',@matlab.settings.mustBeNumericScalar)

addSetting(toolboxFontGroup,'FontColor','FactoryValue','Black', ...

'Hidden',false,'ValidationFcn',@matlab.settings.mustBeStringScalar);

end

将 createMyToolboxSettingsFileUpgraders 函数中两个设置的重命名记录为对 mytoolbox 的版本 2 的设置树的更改。

function upgraders = createMyToolboxSettingsFileUpgraders()

upgraders = matlab.settings.SettingsFileUpgrader('Version2');

move(upgraders,'mytoolbox.font.MyFontSize','mytoolbox.font.FontSize');

move(upgraders,'mytoolbox.font.MyFontColor','mytoolbox.font.FontColor');

end

重新加载 mytoolbox 的出厂设置树。

matlab.settings.reloadFactoryFile('mytoolbox');

使用 settings 函数访问设置树的根,并验证 FontSize 设置的个人值是否已从 MyFontSize 设置中正确移出。

s = settings;

s.mytoolbox.font.FontSize

ans =

Setting 'mytoolbox.font.FontSize' with properties:

ActiveValue: 15

TemporaryValue:

PersonalValue: 15

FactoryValue: 11

获取升级到 mytoolbox 版本 2 的结果。

matlab.settings.loadSettingsCompatibilityResults('mytoolbox','Version2')

ans =

ReleaseCompatibilityResults with properties:

VersionLabel: "Version2"

PreValidationExceptions: [0×0 matlab.settings.ReleaseCompatibilityException]

Results: [1×1 matlab.settings.VersionResults]

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值