exponenta event banner

addGroup

Добавить новую группу параметров

Описание

пример

s = addGroup(parentgroup,name) добавляет новую группу параметров в указанную родительскую группу параметров и возвращает SettingsGroup объект, содержащий новую группу параметров. По умолчанию группы параметров не скрыты, что означает, что они отображаются в родительской группе параметров.

пример

s = addGroup(___,Name,Value) задает свойства группы параметров, используя один или несколько аргументов пары имя-значение. Например, 'Hidden',true добавляет скрытую группу параметров. Укажите пары имя-значение после всех других входных аргументов.

Примеры

свернуть все

Используйте settings для доступа к корню дерева параметров и последующего создания группы параметров mysettings.

s = settings;
newGroup = addGroup(s,'mysettings');
s
s = 
  SettingsGroup with properties:
                   matlab: [1×1 SettingsGroup]
               mysettings: [1×1 SettingsGroup]
    mldrivetripwireaccess: [1×1 SettingsGroup]

Используйте settings для доступа к корню дерева параметров и создания скрытой группы параметров myhiddensettings. Обратите внимание, что новая группа не отображается при отображении родительской группы параметров.

s = settings;
addGroup(s,'myhiddensettings','Hidden',true);
s
s = 
  SettingsGroup with properties:
                   matlab: [1×1 SettingsGroup]
    mldrivetripwireaccess: [1×1 SettingsGroup]

Хотя myhiddensettings не отображается в дереве параметров, он доступен. Например, создайте группу параметров myveryhiddensettings внутри myhiddensettings.

addGroup(s.myhiddensettings,'myveryhiddensettings');
s.myhiddensettings
s = 
  SettingsGroup 'matlab.myhiddensettings' with properties:
    myveryhiddensettings: [1×1 SettingsGroup]

Создайте группу параметров и укажите функцию проверки по умолчанию. Эта функция проверяет значения всех параметров настройки в группе, для которых не определены собственные функции проверки.

Сначала создайте функцию проверки. numericValidationFcn это приводит к ошибке, если входные данные не являются числовыми.

function numericValidationFcn(x)
    errorMsg = 'Value must be numeric.'; 
    assert(isnumeric(x),errorMsg);
end

Используйте settings для доступа к корню дерева параметров и последующего создания группы параметров mynumericsettings. Укажите функцию проверки numericValidationFcn.

s = settings;
newNumericGroup = addGroup(s,'mynumericsettings','ValidationFcn',@numericValidationFcn);

Теперь проверьте, работает ли функция проверки. Создание настройки MyNonNumericSetting в пределах mynumericsettings и установите значение параметра в нечисловое значение. Как и ожидалось, MATLAB ® выдает ошибку.

addSetting(newvalidatedGroup,'MyNonNumericSetting','PersonalValue','Hello')
Error using matlab.settings.SettingsGroup/addSettingHelper
Unable to validate settings data. Error using numericValidationFcn (line 3)
Value must be numeric.

Error in matlab.settings.SettingsGroup/addSetting (line 74)
    out = obj.addSettingHelper(results,defaultsUsed);

Error in matlab.settings.SettingsGroup/addSetting (line 74)
    out = obj.addSettingHelper(results,defaultsUsed);

Входные аргументы

свернуть все

Родительская группа параметров для добавления группы, указанная как SettingsGroup объект. Используйте settings для доступа к объекту корневой группы настроек и ко всем доступным группам настроек.

Имя добавляемой группы параметров, указанное как вектор символов или скаляр строки. Если name уже существует в указанной родительской группе настроек, MATLAB выдает ошибку.

Аргументы пары «имя-значение»

Укажите дополнительные пары, разделенные запятыми Name,Value аргументы. Name является именем аргумента и Value - соответствующее значение. Name должен отображаться внутри кавычек. Можно указать несколько аргументов пары имен и значений в любом порядке как Name1,Value1,...,NameN,ValueN.

Пример: addGroup(parentgroup,'myGroup','Hidden',true) добавляет новую скрытую группу параметров в указанную родительскую группу параметров.

Скрытое состояние, указано как true или false.

Если установлено значение trueгруппы настроек и настройки внутри группы не отображаются, хотя они остаются доступными.

Функция проверки параметров в группе, заданная как дескриптор функции. Если указано, функция используется для проверки значений всех настроек в группе, для которых не определены собственные функции проверки.

Дескриптор функции должен быть связан с функцией, которая принимает значение потенциальной настройки в качестве входного аргумента, не имеет выходных аргументов и выдает ошибку в случае сбоя проверки.

Дескриптор функции должен указывать на функцию на пути MATLAB. Дескрипторы анонимных или вложенных функций не поддерживаются.

Представлен в R2019b