Spec-Zone.ru › OpenJDK 24

Класс DefaultTreeCellEditor

java.lang.Object
javax.swing.tree.DefaultTreeCellEditor
Все реализуемые интерфейсы:
ActionListener, EventListener, CellEditor, TreeSelectionListener, TreeCellEditor
public class DefaultTreeCellEditor extends Object implements ActionListener, TreeCellEditor, TreeSelectionListener
Редактор ячейки дерева. Вам необходимо предоставить экземпляр DefaultTreeCellRenderer, чтобы получить доступ к иконкам. Вы можете необязательно предоставить TreeCellEditor, который будет отображаться в соответствии с иконкой в DefaultTreeCellRenderer. Если вы не предоставите TreeCellEditor, будет использован TextField. Редактирование запускается при тройном щелчке мышью или после щелчка, паузы, щелчка и задержки 1200 миллисекунд.

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

См. также:
  • JTree

Краткое описание вложенных классов

Модификатор и тип Класс Описание
class  DefaultTreeCellEditor.DefaultTextField
TextField используется, когда редактор не предоставлен.
class  DefaultTreeCellEditor.EditorContainer
Контейнер, отвечающий за размещение editingComponent.

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

Модификатор и тип Поле Описание
protected Color borderSelectionColor
Истина, если цвет выделения границы должен быть нарисован.
protected boolean canEdit
С версии Java 2 платформы v1.4 это поле больше не должно использоваться.
protected Component editingComponent
Компонент, используемый при редактировании, полученный из editingContainer.
protected Container editingContainer
Контейнер редактирования, содержащий editorComponent.
protected Icon editingIcon
Иконка, используемая при редактировании.
protected Font font
Шрифт для отрисовки, null указывает, что используется шрифт рендерера.
protected TreePath lastPath
Последний путь, который был выбран.
protected int lastRow
Строка, которая была последней передана в getTreeCellEditorComponent.
protected int offset
Используется при редактировании.
protected TreeCellEditor realEditor
Редактор, обрабатывающий редактирование.
protected DefaultTreeCellRenderer renderer
Рендерер, используемый для получения границы и смещений.
protected Timer timer
Используется перед началом сеанса редактирования.
protected JTree tree
JTree экземпляр, который также прослушивает.

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

Конструктор Описание
DefaultTreeCellEditor(JTree tree, DefaultTreeCellRenderer renderer)
Создаёт объект DefaultTreeCellEditor для JTree, используя указанный рендерер и стандартный редактор.
DefaultTreeCellEditor(JTree tree, DefaultTreeCellRenderer renderer, TreeCellEditor editor)
Создаёт объект DefaultTreeCellEditor для JTree, используя указанный рендерер и указанный редактор.

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

Модификатор и тип Метод Описание
void actionPerformed(ActionEvent e)
Вызывается при срабатывании таймера, это запускает сеанс редактирования.
void addCellEditorListener(CellEditorListener l)
Добавляет CellEditorListener.
void cancelCellEditing()
Отправляет сообщение cancelCellEditing в realEditor и удаляет его из этого экземпляра.
protected boolean canEditImmediately(EventObject event)
Возвращает true, если event является null, или это MouseEvent со счётчиком кликов > 2 и inHitRegion возвращает true.
protected Container createContainer()
Создаёт контейнер для управления размещением editingComponent.
protected TreeCellEditor createTreeCellEditor()
Вызывается, если TreeCellEditor не предоставлен в конструкторе.
protected void determineOffset(JTree tree, Object value, boolean isSelected, boolean expanded, boolean leaf, int row)
Определяет смещение.
Color getBorderSelectionColor()
Возвращает цвет, которым нарисована граница.
CellEditorListener[] getCellEditorListeners()
Возвращает массив всех CellEditorListener, добавленных в этот DefaultTreeCellEditor с помощью addCellEditorListener().
Object getCellEditorValue()
Возвращает значение, которое в данный момент редактируется.
Font getFont()
Получает шрифт, используемый для редактирования.
Component getTreeCellEditorComponent(JTree tree, Object value, boolean isSelected, boolean expanded, boolean leaf, int row)
Настраивает редактор.
protected boolean inHitRegion(int x, int y)
Возвращает true, если переданные координаты являются допустимыми для начала редактирования.
boolean isCellEditable(EventObject event)
Если realEditor возвращает true в этом сообщении, prepareForEditing отправляется сообщение, и возвращается true.
protected void prepareForEditing()
Вызывается непосредственно перед началом редактирования.
void removeCellEditorListener(CellEditorListener l)
Удаляет ранее добавленный CellEditorListener.
void setBorderSelectionColor(Color newColor)
Устанавливает цвет для границы.
void setFont(Font font)
Устанавливает шрифт для редактирования.
protected void setTree(JTree newTree)
Устанавливает дерево, для которого выполняется редактирование.
boolean shouldSelectCell(EventObject event)
Отправляет сообщение realEditor для получения значения.
protected boolean shouldStartEditingTimer(EventObject event)
Возвращает true, если event является MouseEvent, и счётчик кликов равен 1.
protected void startEditingTimer()
Запускает таймер редактирования.
boolean stopCellEditing()
Если realEditor разрешит остановку редактирования, realEditor удаляется, и возвращается true, иначе - false.
void valueChanged(TreeSelectionEvent e)
Сбрасывает lastPath.

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

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

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

realEditor

protected TreeCellEditor realEditor
Редактор, отвечающий за редактирование.

renderer

protected DefaultTreeCellRenderer renderer
Рендерер, используемый для получения границ и смещений.

editingContainer

protected Container editingContainer
Контейнер редактирования, который будет содержать editorComponent.

editingComponent

protected transient Component editingComponent
Компонент, используемый при редактировании, полученный из editingContainer.

canEdit

protected boolean canEdit
Начиная с платформы Java 2 версии v1.4, это поле больше не должно использоваться. Если вы хотите обеспечить аналогичное поведение, вы должны напрямую переопределить isCellEditable.

offset

protected transient int offset
Используется при редактировании. Указывает позицию x для размещения editingComponent.

tree

protected transient JTree tree
JTree экземпляр, за которым также ведётся прослушивание.

lastPath

protected transient TreePath lastPath
Последний выбранный путь.

timer

protected transient Timer timer
Используется перед началом сессии редактирования.

lastRow

protected transient int lastRow
Строка, которая была последней передана в getTreeCellEditorComponent.

borderSelectionColor

protected Color borderSelectionColor
Истинно, если должна быть нарисована граница выделения.

editingIcon

protected transient Icon editingIcon
Иконка, используемая при редактировании.

font

protected Font font
Шрифт для рисования, null указывает на использование шрифта рендерера.

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

DefaultTreeCellEditor

public DefaultTreeCellEditor(JTree tree, DefaultTreeCellRenderer renderer)
Создаёт объект DefaultTreeCellEditor для JTree, используя указанный рендерер и редактор по умолчанию. (Используйте этот конструктор для обычного редактирования.)
Параметры:
tree - объект JTree
renderer - объект DefaultTreeCellRenderer

DefaultTreeCellEditor

public DefaultTreeCellEditor(JTree tree, DefaultTreeCellRenderer renderer, TreeCellEditor editor)
Создаёт объект DefaultTreeCellEditor для JTree, используя указанный рендерер и указанный редактор. (Используйте этот конструктор для специализированного редактирования.)
Параметры:
tree - объект JTree
renderer - объект DefaultTreeCellRenderer
editor - объект TreeCellEditor

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

setBorderSelectionColor

public void setBorderSelectionColor(Color newColor)
Устанавливает цвет, используемый для границы.
Параметры:
newColor - новый цвет границы

getBorderSelectionColor

public Color getBorderSelectionColor()
Возвращает цвет, которым нарисована граница.
Возвращает:
цвет границы выделения

setFont

public void setFont(Font font)
Устанавливает шрифт для редактирования. null указывает на использование шрифта рендерера. Это НЕ переопределит шрифт, который вы установили в редакторе, с которым был создан получатель. Если null для редактора был передан, будет создан редактор по умолчанию, который подберёт этот шрифт.
Параметры:
font - редактируемый Font
См. также:
  • getFont()

getFont

public Font getFont()
Получает шрифт, используемый для редактирования.
Возвращает:
редактируемый Font
См. также:
  • setFont(java.awt.Font)

getTreeCellEditorComponent

public Component getTreeCellEditorComponent(JTree tree, Object value, boolean isSelected, boolean expanded, boolean leaf, int row)
Настраивает редактор. Передаётся в realEditor.
Определено в:
getTreeCellEditorComponent в интерфейсе TreeCellEditor
Параметры:
tree - JTree, запрашивающий редактор для редактирования; этот параметр может быть null
value - значение ячейки для редактирования
isSelected - истинно, если ячейка должна быть отрисована с подсветкой выделения
expanded - истинно, если узел развернут
leaf - истинно, если узел является листом
row - индекс строки редактируемого узла
Возвращает:
компонент для редактирования

getCellEditorValue

public Object getCellEditorValue()
Возвращает значение, которое в настоящее время редактируется.
Определено в:
getCellEditorValue в интерфейсе CellEditor
Возвращает:
значение, которое в настоящее время редактируется

isCellEditable

public boolean isCellEditable(EventObject event)
Если realEditor возвращает true для этого сообщения, prepareForEditing получает сообщение, и возвращается true.
Определено в:
isCellEditable в интерфейсе CellEditor
Параметры:
event - событие, которое редактор должен использовать для определения, следует ли начинать редактирование или нет
Возвращает:
true, если редактирование может быть начато
См. также:
  • CellEditor.shouldSelectCell(java.util.EventObject)

shouldSelectCell

public boolean shouldSelectCell(EventObject event)
Отправляет сообщение в realEditor для получения возвращаемого значения.
Определено в:
shouldSelectCell в интерфейсе CellEditor
Параметры:
event - событие, которое редактор должен использовать для начала редактирования
Возвращает:
true, если редактор хочет выделить ячейку редактирования; в противном случае возвращает false
См. также:
  • CellEditor.isCellEditable(java.util.EventObject)

stopCellEditing

public boolean stopCellEditing()
Если realEditor позволит остановить редактирование, realEditor удаляется и возвращается true, в противном случае - false.
Определено в:
stopCellEditing в интерфейсе CellEditor
Возвращает:
true, если редактирование было остановлено; в противном случае false

cancelCellEditing

public void cancelCellEditing()
Отправляет сообщение в cancelCellEditing для realEditor и удаляет его из этого экземпляра.
Определено в:
cancelCellEditing в интерфейсе CellEditor

addCellEditorListener

public void addCellEditorListener(CellEditorListener l)
Добавляет CellEditorListener.
Определено в:
addCellEditorListener в интерфейсе CellEditor
Параметры:
l - добавляемый слушатель

removeCellEditorListener

public void removeCellEditorListener(CellEditorListener l)
Удаляет ранее добавленного CellEditorListener.
Определено в:
removeCellEditorListener в интерфейсе CellEditor
Параметры:
l - удаляемый слушатель

getCellEditorListeners

public CellEditorListener[] getCellEditorListeners()
Возвращает массив всех CellEditorListener, добавленных в этот DefaultTreeCellEditor с помощью addCellEditorListener().
Возвращает:
все добавленные CellEditorListener или пустой массив, если слушатели не были добавлены
С момента:
1.4

valueChanged

public void valueChanged(TreeSelectionEvent e)
Сбрасывает lastPath.
Specified by:
valueChanged in interface TreeSelectionListener
Parameters:
e - событие, характеризующее изменение.

actionPerformed

public void actionPerformed(ActionEvent e)
Получает сообщение при срабатывании таймера, это запустит сеанс редактирования.
Specified by:
actionPerformed in interface ActionListener
Parameters:
e - событие для обработки

setTree

protected void setTree(JTree newTree)
Устанавливает дерево, которое в настоящее время редактируется. Это необходимо для добавления слушателя выбора.
Parameters:
newTree - новое дерево для редактирования

shouldStartEditingTimer

protected boolean shouldStartEditingTimer(EventObject event)
Возвращает true, если event является MouseEvent и счёт кликов равен 1.
Parameters:
event - изучаемое событие
Returns:
должен ли таймер редактирования запуститься

startEditingTimer

protected void startEditingTimer()
Запускает таймер редактирования.

canEditImmediately

protected boolean canEditImmediately(EventObject event)
Возвращает true, если event является null, или это MouseEvent с количеством кликов > 2 и inHitRegion возвращает true.
Parameters:
event - изучаемое событие
Returns:
можно ли начать редактирование для данного event

inHitRegion

protected boolean inHitRegion(int x, int y)
Возвращает true, если переданное расположение является допустимой позицией мыши для начала редактирования. Это реализовано так, чтобы возвращать false, если x меньше или равно ширине значка и разрыва значков, отображаемых рендерером. Другими словами, это возвращает true, если пользователь кликает по текстовой части, отображаемой рендерером, и false в противном случае.
Parameters:
x - координата x точки
y - координата y точки
Returns:
true, если переданное расположение является допустимой позицией мыши

determineOffset

protected void determineOffset(JTree tree, Object value, boolean isSelected, boolean expanded, boolean leaf, int row)
Определяет смещение.
Parameters:
tree - объект JTree
value - значение
isSelected - состояние выбора
expanded - состояние разворачивания
leaf - состояние листа
row - текущая строка

prepareForEditing

protected void prepareForEditing()
Вызывается непосредственно перед началом редактирования. Добавит editingComponent в editingContainer.

createContainer

protected Container createContainer()
Создаёт контейнер для управления размещением editingComponent.
Returns:
новый объект Container

createTreeCellEditor

protected TreeCellEditor createTreeCellEditor()
Вызывается, если TreeCellEditor не указан в конструкторе. Возвращает редактор TextField.
Returns:
новый редактор TextField

© 1993, 2025, 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://download.java.net/java/early_access/jdk24/docs/api/java.desktop/javax/swing/tree/DefaultTreeCellEditor.html

Spec-Zone.ru

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