Класс 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
|
class |
DefaultTreeCellEditor.EditorContainer Контейнер, отвечающий за размещение |
Поля
| Модификатор и тип | Поле и описание |
|---|---|
protected Color |
borderSelectionColor Истина, если должна быть нарисована граница выделения. |
protected boolean |
canEdit Начиная с Java 2 платформы v1.4, это поле больше не должно использоваться. |
protected Component |
editingComponent Компонент, используемый при редактировании, полученный от |
protected Container |
editingContainer Контейнер редактирования, содержащий |
protected Icon |
editingIcon Иконка для использования при редактировании. |
protected Font |
font Шрифт для отрисовки, |
protected TreePath |
lastPath Последний путь, который был выбран. |
protected int |
lastRow Строка, которая была последней передана в |
protected int |
offset Используется при редактировании. |
protected TreeCellEditor |
realEditor Редактор, отвечающий за редактирование. |
protected DefaultTreeCellRenderer |
renderer Рендерер, используемый для получения границы и смещений. |
protected Timer |
timer Используется перед началом сессии редактирования. |
protected JTree |
tree Экземпляр |
Конструкторы
| Конструктор и описание |
|---|
DefaultTreeCellEditor(JTree tree,
DefaultTreeCellRenderer renderer) Создаёт объект |
DefaultTreeCellEditor(JTree tree,
DefaultTreeCellRenderer renderer,
TreeCellEditor editor) Создаёт объект |
Методы
| Модификатор и тип | Метод и описание |
|---|---|
void |
actionPerformed(ActionEvent e) Вызывается, когда срабатывает таймер, это запускает сессию редактирования. |
void |
addCellEditorListener(CellEditorListener l) Добавляет |
void |
cancelCellEditing() Отправляет сообщение |
protected boolean |
canEditImmediately(EventObject event) Возвращает true, если |
protected Container |
createContainer() Создаёт контейнер для управления размещением |
protected TreeCellEditor |
createTreeCellEditor() Этот метод вызывается, если в конструкторе не указан |
protected void |
determineOffset(JTree tree,
Object value,
boolean isSelected,
boolean expanded,
boolean leaf,
int row) |
Color |
getBorderSelectionColor() Возвращает цвет, которым нарисована граница. |
CellEditorListener[] |
getCellEditorListeners() Возвращает массив всех |
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) Если |
protected void |
prepareForEditing() Вызывается непосредственно перед началом редактирования. |
void |
removeCellEditorListener(CellEditorListener l) Удаляет ранее добавленный |
void |
setBorderSelectionColor(Color newColor) Устанавливает цвет, который нужно использовать для границы. |
void |
setFont(Font font) Устанавливает шрифт для редактирования. |
protected void |
setTree(JTree newTree) Устанавливает дерево, для которого выполняется редактирование. |
boolean |
shouldSelectCell(EventObject event) Отправляет сообщение |
protected boolean |
shouldStartEditingTimer(EventObject event) Возвращает true, если |
protected void |
startEditingTimer() Запускает таймер редактирования. |
boolean |
stopCellEditing() Если |
void |
valueChanged(TreeSelectionEvent e) Сбрасывает |
Методы, унаследованные от класса 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- 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
setTree
protected void setTree(JTree newTree)
Устанавливает дерево, которое в данный момент редактируется. Это необходимо для добавления слушателя выбора.
- Параметры:
-
newTree- новое дерево для редактирования
shouldStartEditingTimer
protected boolean shouldStartEditingTimer(EventObject event)
Возвращает true, если event является MouseEvent и счёт кликов равен 1.
- Параметры:
-
event- изучаемое событие
startEditingTimer
protected void startEditingTimer()
Запускает таймер редактирования.
canEditImmediately
protected boolean canEditImmediately(EventObject event)
Возвращает true, если event является null, или это MouseEvent с количеством кликов > 2 и inHitRegion возвращает true.
- Параметры:
-
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) prepareForEditing
protected void prepareForEditing()
Вызывается непосредственно перед началом редактирования. Добавит editingComponent в editingContainer.
createContainer
protected Container createContainer()
Создаёт контейнер для управления размещением editingComponent.
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.