Класс 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 Platform 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 версии 1.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 - true, если ячейка должна быть отображена с выделением при выборе
expanded - true, если узел раскрыт
leaf - true, если узел является листовым узлом
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.

Определено в:
valueChanged в интерфейсе TreeSelectionListener
Параметры:
e - событие, характеризующее изменение.

actionPerformed

public void actionPerformed(ActionEvent e)

Получает сообщение, когда таймер срабатывает, это запускает сеанс редактирования.

Определено в:
actionPerformed в интерфейсе ActionListener
Параметры:
e - событие для обработки

setTree

protected void setTree(JTree newTree)

Устанавливает дерево, которое в данный момент редактируется. Это необходимо для добавления слушателя выбора.

Параметры:
newTree - новое дерево для редактирования

shouldStartEditingTimer

protected boolean shouldStartEditingTimer(EventObject event)

Возвращает true, если event является MouseEvent и количество щелчков равно 1.

Параметры:
event - событие, которое изучается
Возвращает:
должен ли event запустить таймер редактирования

startEditingTimer

protected void startEditingTimer()

Запускает таймер редактирования.

canEditImmediately

protected boolean canEditImmediately(EventObject event)

Возвращает true, если event является null, или это MouseEvent с количеством щелчков > 2 и inHitRegion возвращает true.

Параметры:
event - событие, которое изучается
Возвращает:
можно ли начать редактирование для данного event

inHitRegion

protected boolean inHitRegion(int x,
                              int y)

Возвращает true, если переданное положение является допустимым местоположением для начала редактирования мышью. Реализовано для возврата false, если x меньше или равно ширине иконки и зазора между иконками, отображаемыми рендерером. Другими словами, это возвращает true, если пользователь щелкнул по текстовой части, отображаемой рендерером, и false в противном случае.

Параметры:
x - координата x точки
y - координата y точки
Возвращает:
true, если переданное местоположение является допустимым местоположением для щелчка мыши

determineOffset

protected void determineOffset(JTree tree,
                               Object value,
                               boolean isSelected,
                               boolean expanded,
                               boolean leaf,
                               int row)

Определение смещения.

Параметры:
tree - объект JTree
value - значение
isSelected - состояние выбора
expanded - состояние раскрытия
leaf - состояние листа
row - текущая строка

prepareForEditing

protected void prepareForEditing()

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

createContainer

protected Container createContainer()

Создаёт контейнер для управления размещением editingComponent.

Возвращает:
новый объект Container

createTreeCellEditor

protected TreeCellEditor createTreeCellEditor()

Вызывается, если TreeCellEditor не предоставлен в конструкторе. Возвращает редактор TextField.

Возвращает:
новый редактор TextField

© 1993, 2020, 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/11/docs/api/java.desktop/javax/swing/tree/DefaultTreeCellEditor.html

Spec-Zone .ru
спецификации, руководства, описания, API