Spec-Zone.ru › OpenJDK 21

Класс TreeModelEvent

java.lang.Object
java.util.EventObject
javax.swing.event.TreeModelEvent
Все реализуемые интерфейсы:
Serializable
public class TreeModelEvent extends EventObject
Инкапсулирует информацию, описывающую изменения в модели дерева, и используется для уведомления слушателей модели дерева об изменении. Дополнительную информацию и примеры см. в Как написать слушателя модели дерева, разделе учебника The Java Tutorial.

Предупреждение: Сериализованные объекты этого класса не будут совместимы с будущими выпусками Swing. Текущая поддержка сериализации подходит для кратковременного хранения или RMI между приложениями, использующими одну и ту же версию Swing. С версии 1.4 добавлена поддержка долговременного хранения всех JavaBeans в пакете java.beans. См. XMLEncoder.

Краткое описание полей

Модификатор и тип Поле Описание
protected int[] childIndices
Индексы, определяющие позицию, где были дети.
protected Object[] children
Дети, которые были удалены.
protected TreePath path
Путь к родительскому узлу узлов, которые изменились.

Поля, объявленные в классе java.util.EventObject

source

Краткое описание конструкторов

Конструктор Описание
TreeModelEvent(Object source, Object[] path)
Используется для создания события, когда структура узла каким-то образом изменилась, определяя путь к корню изменённого поддерева как массив объектов.
TreeModelEvent(Object source, Object[] path, int[] childIndices, Object[] children)
Используется для создания события, когда узлы были изменены, вставлены или удалены, определяя путь к родителю изменённых элементов как массив объектов.
TreeModelEvent(Object source, TreePath path)
Используется для создания события, когда структура узла каким-то образом изменилась, определяя путь к корню изменённого поддерева как объект TreePath.
TreeModelEvent(Object source, TreePath path, int[] childIndices, Object[] children)
Используется для создания события, когда узлы были изменены, вставлены или удалены, определяя путь к родителю изменённых элементов как объект TreePath.

Краткое описание методов

Модификатор и тип Метод Описание
int[] getChildIndices()
Возвращает значения индексов детей.
Object[] getChildren()
Возвращает объекты, которые являются детьми узла, определённого getPath, в указанных местах, заданных getChildIndices.
Object[] getPath()
Удобный метод для получения массива объектов из экземпляра TreePath, который оборачивает это событие.
TreePath getTreePath()
Для всех событий, кроме treeStructureChanged, возвращает родителя изменённых узлов.
String toString()
Возвращает строку, отображающую и идентифицирующую свойства этого объекта.

Методы, объявленные в классе java.util.EventObject

getSource

Методы, объявленные в классе java.lang.Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait

Подробное описание полей

path

protected TreePath path
Путь к родительскому узлу изменённых узлов.

childIndices

protected int[] childIndices
Индексы, определяющие позиции вставленных/удаленных дочерних узлов.

children

protected Object[] children
Удаленные дочерние узлы.

Подробное описание конструкторов

TreeModelEvent

public TreeModelEvent(Object source, Object[] path, int[] childIndices, Object[] children)
Используется для создания события, когда узлы были изменены, вставлены или удалены, определяя путь к родителю изменённых элементов в виде массива объектов. Все изменённые объекты являются потомками (не внуками) указанного родительского узла. Позиции, в которых произошли вставки, удаления или изменения, определяются массивом int. Индексы в этом массиве должны быть упорядочены по возрастанию.

При изменениях индексы в модели точно соответствуют индексам элементов, отображаемых в пользовательском интерфейсе. В результате, порядок индексов не так критичен. Однако после нескольких вставок или удалений элементы, отображаемые в пользовательском интерфейсе, больше не соответствуют элементам в модели. Поэтому важно правильно указать индексы для вставок и удалений.

При вставках индексы представляют конечное состояние дерева после выполнения вставок. Поскольку индексы должны быть упорядочены, наиболее естественный способ обработки — начать вставки с наименьшего индекса и двигаться к наибольшему. Накапливайте вектор объектов Integer, определяющих места вставки, по мере выполнения операции, затем преобразуйте вектор в массив int, чтобы создать событие. Если индекс позиции равен нулю, узел вставляется в начало списка. Если индекс позиции равен размеру списка, узел вставляется в конец списка.

При удалениях индексы представляют начальное состояние дерева до удалений. Поскольку индексы должны быть упорядочены, наиболее естественный способ обработки — использовать счётчик удалений. Начните с инициализации счётчика нулём и обрабатывайте список от наименьшего к наибольшему индексу. Каждый раз, когда выполняется удаление, добавьте текущее значение счётчика удалений к позиции индекса, где произошло удаление, и добавьте результат в вектор расположений удалений, используя addElement(). Затем увеличьте счётчик удалений. Таким образом, позиции индексов, сохранённые в векторе, отражают последствия всех предыдущих удалений, поэтому они представляют позицию каждого объекта в исходном дереве. (Вы также можете начать с наибольшего индекса и двигаться к наименьшему, накапливая вектор позиций удалений по мере выполнения операции, используя insertElementAt(Integer, 0)). Как бы вы ни создавали вектор начальных позиций, вам необходимо преобразовать вектор объектов Integer в массив int, чтобы создать событие.

Примечания:

  • Как и метод insertNodeInto в классе DefaultTreeModel, insertElementAt добавляет в Vector элемент, когда индекс соответствует размеру вектора. Поэтому вы можете использовать insertElementAt(Integer, 0) даже когда вектор пуст.
  • Для создания события изменения узла для корневого узла укажите родительский узел и индексы дочерних узлов как null.
Параметры:
source - Объект, ответственный за генерацию события (обычно создатель объекта события передаёт this в качестве значения)
path - Массив объектов, определяющий путь к родителю изменённого элемента(ов), где первый элемент массива — объект, хранящийся в корневом узле, а последний — объект, хранящийся в родительском узле
childIndices - Массив, содержащий значения индексов удалённых элементов. Индексы должны быть упорядочены по возрастанию
children - Массив объектов, содержащий вставленные, удалённые или изменённые объекты
См. также:
  • TreePath

TreeModelEvent

public TreeModelEvent(Object source, TreePath path, int[] childIndices, Object[] children)
Используется для создания события, когда узлы были изменены, вставлены или удалены, определяя путь к родителю изменённых элементов с помощью объекта TreePath. Дополнительную информацию о том, как указать индексы и объекты, см. в TreeModelEvent(Object,Object[],int[],Object[]).
Параметры:
source - Объект, ответственный за генерацию события (обычно создатель объекта события передаёт this в качестве значения)
path - Объект TreePath, определяющий путь к родителю изменённого элемента(ов)
childIndices - Массив, содержащий значения индексов изменённых элементов
children - Массив объектов, содержащий вставленные, удалённые или изменённые объекты
См. также:
  • TreeModelEvent(Object,Object[],int[],Object[])

TreeModelEvent

public TreeModelEvent(Object source, Object[] path)
Используется для создания события, когда структура узла изменилась каким-либо образом, определяя путь к корню изменённого поддерева в виде массива объектов. Событие изменения структуры может включать, например, перестановку узлов, или может содержать несколько вставок и удалений в поддереве, выходящем из узла, где изменения могли произойти на разных уровнях поддерева.
Примечание:
JTree сворачивает все узлы под указанным узлом, так что видны только его непосредственные дочерние узлы.
Параметры:
source - Объект, ответственный за генерацию события (обычно создатель объекта события передаёт this в качестве значения)
path - Массив объектов, определяющий путь к корню изменённого поддерева, где первый элемент массива — объект, хранящийся в корневом узле, а последний — объект, хранящийся в изменённом узле
См. также:
  • TreePath

TreeModelEvent

public TreeModelEvent(Object source, TreePath path)
Используется для создания события, когда структура узла изменилась каким-либо образом, определяя путь к корню изменённого поддерева с помощью объекта TreePath. Дополнительную информацию об этом событии см. в TreeModelEvent(Object,Object[]).
Параметры:
source - Объект, ответственный за генерацию события (обычно создатель объекта события передаёт this в качестве значения)
path - Объект TreePath, определяющий путь к изменению. В DefaultTreeModel этот объект содержит массив объектов пользовательских данных, но подкласс TreePath может использовать совершенно другой механизм — например, идентификатор узла
См. также:
  • TreeModelEvent(Object,Object[])

Подробное описание методов

getTreePath

public TreePath getTreePath()
Для всех событий, кроме treeStructureChanged, возвращает родительский узел изменённых узлов. Для событий treeStructureChanged возвращает родителя изменённой структуры. Эти методы используются для получения списка затронутых узлов.

Исключением является событие treeNodesChanged, предназначенное для идентификации корня, в этом случае он вернёт корень, а getChildIndices вернёт null.

Возвращает:
объект TreePath, используемый для определения изменённых узлов.
См. также:
  • TreePath.getLastPathComponent()

getPath

public Object[] getPath()
Метод-обёртка для получения массива объектов из объекта TreePath, который обертывает это событие.
Возвращает:
массив объектов, где первый объект — корневой, а последний — узел, определённый путём

getChildren

public Object[] getChildren()
Возвращает объекты, являющиеся дочерними узлами узла, определённого getPath в позициях, указанных getChildIndices. Если это событие удаления, возвращаемые объекты больше не являются дочерними узлами родительского узла.
Возвращает:
массив объектов, содержащих дочерние узлы, определенные событием
См. также:
  • getPath()
  • getChildIndices()

getChildIndices

public int[] getChildIndices()
Возвращает значения индексов дочерних узлов. Если это событие удаления, индексы указывают на места в исходном списке, где были удалены элементы. Если это вставка, индексы указывают на места в конечном списке, где элементы были добавлены. При изменениях узлов индексы указывают на места изменённых узлов.
Возвращает:
массив значений индексов дочерних узлов, определенных событием

toString

public String toString()
Возвращает строку, отображающую и идентифицирующую свойства этого объекта.
Переопределяет:
toString в классе EventObject
Возвращает:
строковое представление этого объекта

© 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/event/TreeModelEvent.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API