Spec-Zone.ru › OpenJDK 25

Интерфейс 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
См. также:
  • CellEditorListener

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

Модификатор и тип Метод Описание
void addCellEditorListener(CellEditorListener l)
Добавляет слушателя в список, который получает уведомления при завершении или отмене редактирования.
void cancelCellEditing()
Предписывает редактору отменить редактирование и не принимать частично отредактированное значение.
Object getCellEditorValue()
Возвращает значение, содержащееся в редакторе.
boolean isCellEditable(EventObject anEvent)
Запрашивает у редактора, можно ли начать редактирование с использованием anEvent.
void removeCellEditorListener(CellEditorListener l)
Удаляет слушателя из списка, получающего уведомления
boolean shouldSelectCell(EventObject anEvent)
Возвращает true, если редактируемую ячейку следует выделить, и false в противном случае.
boolean stopCellEditing()
Предписывает редактору завершить редактирование и принять частично отредактированное значение в качестве значения редактора.

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

getCellEditorValue

Object getCellEditorValue()
Возвращает значение, содержащееся в редакторе.
Возвращает:
значение, содержащееся в редакторе

isCellEditable

boolean isCellEditable(EventObject anEvent)
Запрашивает у редактора, можно ли начать редактирование с использованием anEvent. anEvent задан в системе координат вызывающего компонента. Редактор не может предполагать, что компонент, возвращаемый getCellEditorComponent, установлен. Этот метод предназначен для использования клиентом, чтобы избежать затрат на настройку и установку компонента редактора, если редактирование невозможно. Если редактирование можно начать, метод возвращает true.
Параметры:
anEvent — событие, которое редактор должен использовать, чтобы определить, начинать ли редактирование
Возвращает:
true, если редактирование можно начать
См. также:
  • shouldSelectCell(EventObject)

shouldSelectCell

boolean shouldSelectCell(EventObject anEvent)
Возвращает true, если редактируемую ячейку следует выделить, и false в противном случае. Обычно возвращается true, поскольку в большинстве случаев редактируемую ячейку следует выделить. Однако возвращать false полезно, чтобы не менять выделение при некоторых видах редактирования. Например, в таблице со столбцом флажков пользователь может захотеть изменять эти флажки, не меняя выделение. Разумеется, клиент редактора сам решает, использовать ли возвращаемое значение, но может этого не делать, если не хочет.
Параметры:
anEvent — событие, которое редактор должен использовать для начала редактирования
Возвращает:
true, если редактор предлагает выделить редактируемую ячейку; в противном случае возвращает false
См. также:
  • isCellEditable(EventObject)

stopCellEditing

boolean stopCellEditing()
Предписывает редактору завершить редактирование и принять частично отредактированное значение в качестве значения редактора. Редактор возвращает false, если редактирование не было завершено; это полезно для редакторов, которые проверяют данные и не могут принимать недопустимые значения.
Возвращает:
true, если редактирование было завершено; в противном случае false

cancelCellEditing

void cancelCellEditing()
Предписывает редактору отменить редактирование и не принимать частично отредактированное значение.

addCellEditorListener

void addCellEditorListener(CellEditorListener l)
Добавляет слушателя в список, который получает уведомления при завершении или отмене редактирования.
Параметры:
l — CellEditorListener

removeCellEditorListener

void removeCellEditorListener(CellEditorListener l)
Удаляет слушателя из списка, получающего уведомления
Параметры:
l — CellEditorListener

Сообщить об ошибке или предложить улучшение
Дополнительную справочную информацию по API и документацию для разработчиков см. в разделе Документация Java SE, содержащем более подробные описания для разработчиков, обзоры концепций, определения терминов, обходные решения и работающие примеры кода. Другие версии.
Java является товарным знаком или зарегистрированным товарным знаком Oracle и/или ее аффилированных лиц в США и других странах.
Авторское право © 1993, 2025, Oracle и/или ее аффилированные лица, 500 Oracle Parkway, Redwood Shores, CA 94065 USA.
Все права защищены. Использование регулируется условиями лицензии и политикой распространения документации.

© 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://docs.oracle.com/en/java/javase/25/docs/api/java.desktop/javax/swing/CellEditor.html

Spec-Zone.ru

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