Интерфейс CellEditor
- Все известные подинтерфейсы:
-
TableCellEditor,TreeCellEditor
- Все известные реализующие классы:
-
AbstractCellEditor,DefaultCellEditor,DefaultTreeCellEditor
public interface CellEditor
Наличие этого интерфейса позволяет сложным компонентам (клиенту редактора), таким как JTree и JTable, разрешать любому общему редактору редактировать значения в ячейке таблицы или ячейке дерева и т. д. Без этого интерфейса общего редактора JTable должен был бы знать о конкретных редакторах, таких как JTextField, JCheckBox, JComboBox, и т. д. Кроме того, без этого интерфейса клиенты редакторов, такие как JTable, не могли бы работать с любыми редакторами, разработанными в будущем пользователем или сторонним поставщиком (ISV).
Чтобы использовать этот интерфейс, разработчик, создающий новый редактор, может реализовать новый компонент. Или разработчик может выбрать подход на основе оболочки и предоставить сопутствующий объект, который реализует интерфейс CellEditor (см. пример в DefaultCellEditor). Подход на основе оболочки особенно полезен, если пользователь хочет использовать редактор стороннего поставщика (ISV) с JTable, но поставщик ISV не реализовал интерфейс CellEditor. Пользователь может просто создать объект, который содержит экземпляр объекта редактора стороннего поставщика и «перевести» API CellEditor в API редактора стороннего поставщика.
- С момента:
- 1.2
- См. также:
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
void |
addCellEditorListener |
Добавляет слушателя в список, уведомляемый при остановке или отмене редактирования. |
void |
cancelCellEditing() |
Указывает редактору отменить редактирование и не принимать частично отредактированное значение. |
Object |
getCellEditorValue() |
Возвращает значение, содержащееся в редакторе. |
boolean |
isCellEditable |
Запрашивает у редактора возможность начать редактирование, используя anEvent. |
void |
removeCellEditorListener |
Удаляет слушателя из списка, который уведомляется |
boolean |
shouldSelectCell |
Возвращает true, если ячейка редактирования должна быть выбрана, в противном случае false. |
boolean |
stopCellEditing() |
Указывает редактору остановить редактирование и принять любое частично отредактированное значение в качестве значения редактора. |
Подробное описание методов
getCellEditorValue
Object getCellEditorValue()
- Возвращает:
- значение, содержащееся в редакторе
isCellEditable
boolean isCellEditable(EventObject anEvent)
anEvent. anEvent находится в системе координат вызывающего компонента. Редактор не может предполагать, что компонент, возвращаемый getCellEditorComponent, установлен. Этот метод предназначен для использования клиентом, чтобы избежать затрат на настройку и установку компонента редактора, если редактирование невозможно. Если редактирование может быть начато, этот метод возвращает true.- Параметры:
-
anEvent- событие, которое редактор должен использовать для определения возможности начала редактирования - Возвращает:
- true, если редактирование можно начать
- См. также:
shouldSelectCell
boolean shouldSelectCell(EventObject anEvent)
- Параметры:
-
anEvent- событие, которое редактор должен использовать для начала редактирования - Возвращает:
- true, если редактор хочет выбрать ячейку редактирования; в противном случае возвращает false
- См. также:
stopCellEditing
boolean stopCellEditing()
- Возвращает:
- true, если редактирование было остановлено; в противном случае false
cancelCellEditing
void cancelCellEditing()
addCellEditorListener
void addCellEditorListener(CellEditorListener l)
- Параметры:
-
l- CellEditorListener
removeCellEditorListener
void removeCellEditorListener(CellEditorListener l)
- Параметры:
-
l- CellEditorListener
© 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/CellEditor.html