Интерфейс 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, 2021, 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/17/docs/api/java.desktop/javax/swing/CellEditor.html