VersionResults
说明
升级工具箱的个人设置时,VersionResults
对象包含每次操作的结果。
创建对象
使用 matlab.settings.loadSettingsCompatibilityResults
函数为特定工具箱版本号创建一个 ReleaseCompatibilityResults
对象。然后,访问 Results
属性以获取 VersionResults
对象。
例如,以下代码获取工具箱 mytoolbox
的版本 2
的 VersionResults
对象。
myCompatibilityResults = matlab.settings.loadSettingsCompatibilityResults('mytoolbox','Version2'); myCompatibilityResults.Results
ans = VersionResults with properties: VersionLabel: "Version2" VersionChanges: [1×2 matlab.settings.OperationResult]
属性
VersionLabel
— 结果针对的工具箱版本
字符串标量
结果针对的工具箱版本,指定为字符串标量。
示例: "Version2"
VersionChanges
— 每个升级操作的状态
OperationResult
对象数组
每个升级操作的状态,指定为操作结果对象的数组。
示例
获取升级个人设置的结果
创建函数来创建一个工具箱出厂树,然后升级该工具箱出厂树,再测试升级是否成功完成。
函数 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
使用空的 matlab.settings.SettingsFileUpgrader
对象创建函数 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" }
将包含设置树创建函数和工具箱资源文件夹的文件夹添加到 MATLAB® 路径。然后,加载 mytoolbox
的出厂设置树。
matlab.settings.reloadFactoryFile('mytoolbox');
使用 settings
函数访问设置树的根,并为 MyFontSize
设置设置个人值。
s = settings; s.mytoolbox.font.MyFontSize.PersonalValue = 15;
将 createMyToolboxFactoryTree
中的设置名称从 MyFontSize
和 MyFontColor
更改为 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: <no value> PersonalValue: 15 FactoryValue: 11
获取 mytoolbox
的版本 2
的每次升级操作的结果。
compatibilityResults = matlab.settings.loadSettingsCompatibilityResults('mytoolbox','Version2'); compatibilityResults.Results
ans = VersionResults with properties: VersionLabel: "Version2" VersionChanges: [1×2 matlab.settings.OperationResult]
版本历史记录
在 R2019b 中推出
MATLAB 命令
您点击的链接对应于以下 MATLAB 命令:
请在 MATLAB 命令行窗口中直接输入以执行命令。Web 浏览器不支持 MATLAB 命令。
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)