-
- All Known Subinterfaces:
-
TableCellEditor
,TreeCellEditor
- 所有已知实现类:
-
AbstractCellEditor
,DefaultCellEditor
,DefaultTreeCellEditor
public interface CellEditor
该界面定义了一般编辑器应该能够实现的方法。使用此接口可以使复杂组件(编辑器的客户端)(如
JTree
和JTable
允许任何通用编辑器在表单元格或树形单元格等中编辑值。如果没有此通用编辑器界面,则JTable
将不得不知道具体的编辑器,如JTextField
,JCheckBox
,JComboBox
,等等。此外,如果没有这个接口,编辑如客户JTable
将无法由用户或第三方ISV将来开发的任何编辑工作。要使用此界面,创建新编辑器的开发人员可以使新组件实现该接口。 或者开发人员可以选择基于包装器的方法,并提供实现
CellEditor
接口的协同对象(例如,参见DefaultCellEditor
)。 如果用户想要使用具有JTable
第三方ISV编辑器,但是ISV没有实现CellEditor
接口,则包装方法特别有用。 用户只需创建一个包含第三方编辑器对象实例的对象,并将CellEditor
API翻译成第三方编辑器的API。- 从以下版本开始:
- 1.2
- 另请参见:
-
CellEditorListener
-
-
方法摘要
所有方法 接口方法 抽象方法 Modifier and Type 方法 描述 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(java.util.EventObject)
-
shouldSelectCell
boolean shouldSelectCell(EventObject anEvent)
如果选择编辑单元格,则返回true,否则返回false。 通常,返回值为true,因为大多数情况下应该选择编辑单元格。 但是,返回false是有用的,以保持选择不会对某些类型的编辑进行更改。 例如。 包含一列复选框的表格,用户可能希望能够更改这些复选框,而无需更改选择。 (参见Netscape Communicator只是这样一个例子)当然,由编辑器的客户端使用返回值,但不需要,如果它不想。- 参数
-
anEvent
- 编辑器应该用来开始编辑的事件 - 结果
- 如果编辑器希望选择编辑单元,则为true; 否则返回false
- 另请参见:
-
isCellEditable(java.util.EventObject)
-
stopCellEditing
boolean stopCellEditing()
告诉编辑器停止编辑并接受任何部分编辑的值作为编辑器的值。 如果编辑没有停止,编辑器返回false; 这对于验证并且不能接受无效条目的编辑者很有用。- 结果
- 如果编辑停止,则为true; 否则为假
-
cancelCellEditing
void cancelCellEditing()
告诉编辑器取消编辑,不接受任何部分编辑的值。
-
addCellEditorListener
void addCellEditorListener(CellEditorListener l)
将一个监听器添加到编辑器停止时通知的列表,或者取消编辑。- 参数
-
l
- CellEditorListener
-
removeCellEditorListener
void removeCellEditorListener(CellEditorListener l)
从通知列表中移除侦听器- 参数
-
l
- CellEditorListener
-
-