Класс DefaultTreeModel
- Все реализованные интерфейсы:
-
Serializable,TreeModel
public class DefaultTreeModel extends Object implements Serializable, TreeModel
Предупреждение: Сериализованные объекты этого класса не будут совместимы с будущими выпусками Swing. Текущая поддержка сериализации подходит для краткосрочного хранения или RMI между приложениями, использующими одну и ту же версию Swing. Начиная с версии 1.4, поддержка долгосрочного хранения всех JavaBeans была добавлена в пакет java.beans. Пожалуйста, обратитесь к XMLEncoder.
Краткое описание полей
| Модификатор и тип | Поле | Описание |
|---|---|---|
protected boolean |
asksAllowsChildren |
Определяет, как метод isLeaf определяет, является ли узел листом. |
protected EventListenerList |
listenerList |
Слушатели. |
protected TreeNode |
root |
Корень дерева. |
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
DefaultTreeModel |
Создаёт дерево, в котором любой узел может иметь дочерние узлы. |
DefaultTreeModel |
Создаёт дерево, определяя, может ли любой узел иметь дочерние узлы или только определённые узлы могут иметь дочерние узлы. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
void |
addTreeModelListener |
Добавляет слушателя для события TreeModelEvent, публикуемого после изменений в дереве. |
boolean |
asksAllowsChildren() |
Указывает, как определяются листовые узлы. |
protected void |
fireTreeNodesChanged |
Уведомляет всех слушателей, зарегистрированных для уведомлений об этом типе событий. |
protected void |
fireTreeNodesInserted |
Уведомляет всех слушателей, зарегистрированных для уведомлений об этом типе событий. |
protected void |
fireTreeNodesRemoved |
Уведомляет всех слушателей, зарегистрированных для уведомлений об этом типе событий. |
protected void |
fireTreeStructureChanged |
Уведомляет всех слушателей, зарегистрированных для уведомлений об этом типе событий. |
Object |
getChild |
Возвращает дочерний узел parent с индексом index в массиве дочерних узлов родительского узла. |
int |
getChildCount |
Возвращает количество дочерних узлов parent. |
int |
getIndexOfChild |
Возвращает индекс дочернего узла в родительском узле. |
<T extends EventListener> |
getListeners |
Возвращает массив всех объектов, в настоящее время зарегистрированных в качестве FooListener для данной модели. |
TreeNode[] |
getPathToRoot |
Строит массив родителей узла вплоть до корневого узла, где исходный узел является последним элементом в возвращаемом массиве. |
protected TreeNode[] |
getPathToRoot |
Строит массив родителей узла вплоть до корневого узла, где исходный узел является последним элементом в возвращаемом массиве. |
Object |
getRoot() |
Возвращает корень дерева. |
TreeModelListener[] |
getTreeModelListeners() |
Возвращает массив всех слушателей модели дерева, зарегистрированных в этой модели. |
void |
insertNodeInto |
Вызывается для вставки newChild на место index в дочерних узлах parents. |
boolean |
isLeaf |
Возвращает, является ли указанный узел листовым узлом. |
void |
nodeChanged |
Вызывайте этот метод после изменения представления узла в дереве. |
void |
nodesChanged |
Вызывайте этот метод после изменения представления дочерних узлов, идентифицированных childIndicies, в дереве. |
void |
nodeStructureChanged |
Вызывайте этот метод, если вы полностью изменили дочерние узлы узла и дочерние узлы его дочерних узлов... |
void |
nodesWereInserted |
Вызывайте этот метод после вставки некоторых TreeNodes в узел. |
void |
nodesWereRemoved |
Вызывайте этот метод после удаления некоторых TreeNodes из узла. |
void |
reload() |
Вызывайте этот метод, если вы изменили TreeNode, от которых зависит эта модель. |
void |
reload |
Вызывайте этот метод, если вы изменили TreeNode, от которых зависит эта модель. |
void |
removeNodeFromParent |
Отправьте это сообщение, чтобы удалить узел из его родительского узла. |
void |
removeTreeModelListener |
Удаляет слушателя, ранее добавленного с помощью addTreeModelListener(). |
void |
setAsksAllowsChildren |
Устанавливает, нужно ли тестировать листовость, спрашивая getAllowsChildren() или isLeaf() у TreeNodes. |
void |
setRoot |
Устанавливает корень в root. |
void |
valueForPathChanged |
Это устанавливает объект пользователя TreeNode, идентифицируемого путем, и публикует изменения узла. |
Подробное описание полей
root
protected TreeNode root
listenerList
protected EventListenerList listenerList
asksAllowsChildren
protected boolean asksAllowsChildren
isLeaf определяет, является ли узел листом. Если true, узел является листом, если он не допускает дочерних элементов. (Если он допускает дочерние элементы, он не является листом, даже если дочерних элементов нет). Это позволяет, например, различать узлы папки и узлы файла в файловой системе. Если это значение false, то любой узел без дочерних элементов является листом, и любой узел может получить дочерние элементы.
- См. также:
Подробное описание конструкторов
DefaultTreeModel
@ConstructorProperties("root") public DefaultTreeModel(TreeNode root) - Параметры:
-
root- объект TreeNode, являющийся корнем дерева - См. также:
DefaultTreeModel
public DefaultTreeModel(TreeNode root, boolean asksAllowsChildren)
- Параметры:
-
root- объект TreeNode, являющийся корнем дерева -
asksAllowsChildren- логическое значение, false, если любой узел может иметь дочерние элементы, true, если каждый узел должен определить, может ли он иметь дочерние элементы - См. также:
Подробное описание методов
setAsksAllowsChildren
public void setAsksAllowsChildren(boolean newValue)
- Параметры:
-
newValue- если true, вызывается getAllowsChildren(), в противном случае вызывается isLeaf()
asksAllowsChildren
public boolean asksAllowsChildren()
- Возвращает:
- true, если листья — только те узлы, которые не допускают дочерние элементы, false, если листья — узлы без дочерних элементов (даже если они разрешены)
- См. также:
setRoot
public void setRoot(TreeNode root)
root. Значение null для root означает, что дерево должно отображать ничего, и это допустимо.- Параметры:
-
root- новое значение корня дерева
getRoot
public Object getRoot()
- Указано в:
-
getRootв интерфейсеTreeModel - Возвращает:
- корень дерева
getIndexOfChild
public int getIndexOfChild(Object parent, Object child)
null, возвращается -1.- Указано в:
-
getIndexOfChildв интерфейсеTreeModel - Параметры:
-
parent- узел в дереве, полученный из этого источника данных -
child- узел, который нас интересует - Возвращает:
- индекс дочернего элемента в родительском элементе или -1, если родительский или дочерний элемент
null
getChild
public Object getChild(Object parent, int index)
- Указано в:
-
getChildв интерфейсеTreeModel - Параметры:
-
parent- узел в дереве, полученный из этого источника данных -
index- индекс дочернего элемента для возврата - Возвращает:
- дочерний элемент родительского элемента с индексом индекс
getChildCount
public int getChildCount(Object parent)
- Указано в:
-
getChildCountв интерфейсеTreeModel - Параметры:
-
parent- узел в дереве, полученный из этого источника данных - Возвращает:
- количество дочерних элементов узла родительский элемент
isLeaf
public boolean isLeaf(Object node)
asksAllowsChildren. - Указано в:
-
isLeafв интерфейсеTreeModel - Параметры:
-
node- узел для проверки - Возвращает:
- true, если узел является листом
- См. также:
reload
public void reload()
TreeNode , от которых зависит эта модель. Модель уведомит всех своих слушателей о том, что модель изменилась.valueForPathChanged
public void valueForPathChanged(TreePath path, Object newValue)
- Указано в:
-
valueForPathChangedв интерфейсеTreeModel - Параметры:
-
path- путь к узлу, который пользователь изменил -
newValue- новое значение из TreeCellEditor
insertNodeInto
public void insertNodeInto(MutableTreeNode newChild, MutableTreeNode parent, int index)
- Параметры:
-
newChild- дочерний узел, который нужно вставить -
parent- узел, к которому нужно добавить новый узел -
index- индекс дочерних элементов родительского элемента
removeNodeFromParent
public void removeNodeFromParent(MutableTreeNode node)
- Параметры:
-
node- узел, который нужно удалить из родительского элемента
nodeChanged
public void nodeChanged(TreeNode node)
- Параметры:
-
node- изменённый узел
reload
public void reload(TreeNode node)
TreeNode , от которых зависит эта модель. Модель уведомит всех своих слушателей о том, что модель изменилась ниже указанного узла.- Параметры:
-
node- узел, ниже которого модель изменилась
nodesWereInserted
public void nodesWereInserted(TreeNode node, int[] childIndices)
- Параметры:
-
node- родительский узел, количество дочерних элементов которого увеличилось -
childIndices- индексы вставленных дочерних элементов
nodesWereRemoved
public void nodesWereRemoved(TreeNode node, int[] childIndices, Object[] removedChildren)
- Параметры:
-
node- родительский узел, у которого были удалены дочерние элементы -
childIndices- индексы удалённых дочерних элементов -
removedChildren- массив объектов дочерних элементов, которые были удалены
nodesChanged
public void nodesChanged(TreeNode node, int[] childIndices)
- Parameters:
-
node- изменённый узел -
childIndices- индексы изменённых дочерних элементов
nodeStructureChanged
public void nodeStructureChanged(TreeNode node)
- Parameters:
-
node- изменённый узел
getPathToRoot
public TreeNode[] getPathToRoot(TreeNode aNode)
- Parameters:
-
aNode- узел TreeNode, для которого необходимо получить путь - Returns:
- массив TreeNode, указывающий путь от корня
getPathToRoot
protected TreeNode[] getPathToRoot(TreeNode aNode, int depth)
- Parameters:
-
aNode- узел TreeNode, для которого необходимо получить путь -
depth- целое число, указывающее количество шагов, уже сделанных к корню (при рекурсивных вызовах), используемое для определения размера возвращаемого массива - Returns:
- массив TreeNode, указывающий путь от корня к указанному узлу
addTreeModelListener
public void addTreeModelListener(TreeModelListener l)
- Specified by:
-
addTreeModelListenerв интерфейсеTreeModel - Parameters:
-
l- слушатель для добавления - See Also:
removeTreeModelListener
public void removeTreeModelListener(TreeModelListener l)
- Specified by:
-
removeTreeModelListenerв интерфейсеTreeModel - Parameters:
-
l- слушатель для удаления - See Also:
getTreeModelListeners
public TreeModelListener[] getTreeModelListeners()
- Returns:
- все слушатели модели дерева этой модели или пустой массив, если слушатели модели дерева не зарегистрированы
- Since:
- 1.4
- See Also:
fireTreeNodesChanged
protected void fireTreeNodesChanged(Object source, Object[] path, int[] childIndices, Object[] children)
- Parameters:
-
source- источник события; обычноthis -
path- путь к родителю узлов, которые изменились; используйтеnullдля определения того, что изменился корень -
childIndices- индексы изменённых элементов -
children- изменённые элементы
fireTreeNodesInserted
protected void fireTreeNodesInserted(Object source, Object[] path, int[] childIndices, Object[] children)
- Parameters:
-
source- источник события; обычноthis -
path- путь к родителю узлов, которые были добавлены -
childIndices- индексы новых элементов -
children- новые элементы
fireTreeNodesRemoved
protected void fireTreeNodesRemoved(Object source, Object[] path, int[] childIndices, Object[] children)
- Parameters:
-
source- источник события; обычноthis -
path- путь к родителю узлов, которые были удалены -
childIndices- индексы удалённых элементов -
children- удалённые элементы
fireTreeStructureChanged
protected void fireTreeStructureChanged(Object source, Object[] path, int[] childIndices, Object[] children)
- Parameters:
-
source- источник события; обычноthis -
path- путь к родителю структуры, которая изменилась; используйтеnullдля определения того, что изменился корень -
childIndices- индексы затронутых элементов -
children- затронутые элементы
getListeners
public <T extends EventListener> T[] getListeners(Class<T> listenerType)
addFooListener. Вы можете указать аргумент listenerType с литералом класса, например, FooListener.class. Например, вы можете запросить слушателей модели дерева DefaultTreeModel m следующим кодом:
TreeModelListener[] tmls = (TreeModelListener[])(m.getListeners(TreeModelListener.class));Если такие слушатели отсутствуют, этот метод возвращает пустой массив.
- Type Parameters:
-
T- тип слушателя - Parameters:
-
listenerType- тип запрашиваемых слушателей - Returns:
- массив всех объектов, зарегистрированных в качестве слушателей на этом компоненте, или пустой массив, если такие слушатели не были добавлены
- Throws:
-
ClassCastException- еслиlistenerTypeне указывает класс или интерфейс, реализующийjava.util.EventListener - Since:
- 1.3
- See Also:
© 1993, 2023, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/21/docs/api/java.desktop/javax/swing/tree/DefaultTreeModel.html