Создайте древовидный компонент
t = uitreet = uitree(Name,Value)t = uitree(parent)t = uitree(parent,Name,Value) создает дерево в новом окне рисунка и возвращает объект t = uitreeTree. MATLAB® вызывает функцию uifigure, чтобы создать фигуру.
задает значения свойств t = uitree(Name,Value)Tree с помощью одного или нескольких аргументов пары Name,Value.
создает дерево в заданном контейнере и устанавливает одни или несколько значений свойств t = uitree(parent,Name,Value)Tree.
Создайте дерево, которое содержит один узел под названием Sample Data.
t = uitree('Position',[20 20 150 150]); node = uitreenode(t,'Text','Sample Data');

Создайте программный файл под названием mytreeapp.m, который содержит следующие команды, чтобы создать дерево, набор вложенных древовидных узлов и функцию обратного вызова для дерева. Свойство SelectionChangedFcn задает функцию, чтобы выполниться, когда пользователь кликает по узлу в дереве.
function mytreeapp f = uifigure; t = uitree(f,'Position',[20 20 150 150]); % Assign Tree callback in response to node selection t.SelectionChangedFcn = @nodechange; % First level nodes category1 = uitreenode(t,'Text','Runners','NodeData',[]); category2 = uitreenode(t,'Text','Cyclists','NodeData',[]); % Second level nodes. % Node data is age (y), height (m), weight (kg) p1 = uitreenode(category1,'Text','Joe','NodeData',[40 1.67 58] ); p2 = uitreenode(category1,'Text','Linda','NodeData',[49 1.83 90]); p3 = uitreenode(category2,'Text','Rajeev','NodeData',[25 1.47 53]); p4 = uitreenode(category2,'Text','Anne','NodeData',[88 1.92 100]); % Expand the tree expand(t); function nodechange(src,event) node = event.SelectedNodes; display(node.NodeData); end end
Когда пользователь запускает mytreeapp и кликает по узлу в дереве, MATLAB отображает NodeData для того узла.

parent — Родительский контейнерFigure (значение по умолчанию) | объект Panel | объект Tab | объект ButtonGroup | объект GridLayoutРодительский контейнер, заданный как Figure, создал использование функции uifigure или одного из ее дочерних контейнеров: Tab, Panel, ButtonGroup или GridLayout. Если никакой контейнер не задан, MATLAB вызывает функцию uifigure, чтобы создать новый объект Figure, который служит родительским контейнером.
t = uitree('Position',[100 100 150 150]) создает дерево с определенным местоположением и размером.Укажите необязательные аргументы в виде пар ""имя, значение"", разделенных запятыми. Имя (Name) — это имя аргумента, а значение (Value) — соответствующее значение. Имя должно находиться внутри одинарных кавычек (' '). Можно задать несколько имен и аргументов пары значения как Name1,Value1,...,NameN,ValueN.
Свойства, перечисленные здесь, являются подмножеством. Для полного списка см. Свойства объекта Tree.
SelectedNodes SelectedNodes [] (значение по умолчанию) | объект TreeNode | массив объектов TreeNodeВыбранные узлы, заданные как объект TreeNode или массив объектов TreeNode. Используйте это свойство получить или установить выбранные узлы в дереве.
Чтобы позволить пользователям выбирать несколько узлов, установите свойство Multiselect на 'on'. MATLAB всегда возвращает SelectedNodes как вектор-столбец, когда дерево имеет несколько выбранных узлов.
'Multiselect' — Несколько выбор узла'off' (значение по умолчанию) | 'on'Несколько выбор узла, заданный как 'off' или 'on'. Установите это свойство на 'on' позволять пользователям выбирать несколько узлов одновременно.
'SelectionChangedFcn' Выбор изменил коллбэк'' (значение по умолчанию) | указатель на функцию | массив ячеек | вектор символовВыбор изменил коллбэк, заданный как одно из этих значений:
Указатель на функцию.
Массив ячеек, в котором первый элемент является указателем на функцию. Последующие элементы массива ячеек являются аргументами, которые передаются в функцию обратного вызова.
Вектор символов, содержащий допустимое выражение MATLAB (не рекомендуемый). MATLAB оценивает это выражение в базовом рабочем пространстве.
Используйте эту функцию обратного вызова, чтобы выполнить команды, когда пользователь выберет различный узел в дереве.
Эта функция обратного вызова может получить доступ к определенной информации о взаимодействии пользователя с деревом, таким как выбранные узлы. MATLAB передает эту информацию в объекте SelectedNodesChangedData в качестве второго аргумента к вашей функции обратного вызова. В App Designer аргумент называется событием. Вы можете запросить свойства объекта с помощью записи через точку. Например, event.SelectedNodes возвращает выбранный объект TreeNode или объекты. Объект SelectedNodesChangedData не доступен функциям обратного вызова, заданным как векторы символов.
Следующая таблица описывает свойства объекта SelectedNodesChangedData.
|
Свойство |
Описание |
|---|---|
SelectedNodes |
Последний раз выбранный объект |
PreviousSelectedNodes |
Ранее выбранный объект |
Source |
Компонент, который выполняет обратный вызов |
EventName |
|
Для получения дополнительной информации о записи коллбэков, смотрите Коллбэки Записи в App Designer.
'Position' — Расположение и размер[20 20 100 300] (значение по умолчанию) | [left bottom width height]Местоположение и размер, заданный как четырехэлементный вектор формы [left bottom width height]. В этой таблице описываются каждый элемент в векторе. Все измерения указаны в пикселях.
| Элемент | Описание |
|---|---|
left | Расстояние от внутреннего левого края родительского контейнера к левому краю ограничительной рамки, которая заключает дерево |
bottom | Расстояние от внутреннего базового края родительского контейнера к базовому краю ограничительной рамки, которая заключает дерево |
width | Расстояние между правыми и левыми ребрами ограничительной рамки |
height | Расстояние между верхними и нижними ребрами ограничительной рамки |
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.