- 所有已知的子接口:
TableCellEditor,TreeCellEditor
- 所有已知的实现类:
AbstractCellEditor,DefaultCellEditor,DefaultTreeCellEditor
public interface CellEditor
这个接口定义了任何通用编辑器应该能够实现的方法。
拥有此接口可启用复杂组件(编辑器的客户端),例如 JTree 和 JTable 以允许任何通用编辑器编辑表格单元格或树单元格等中的值。如果没有此通用编辑器接口,JTable 将不得不了解特定的编辑器,如 JTextField 、 JCheckBox 、 JComboBox 等。此外,如果没有此接口,编辑器(如 JTable )的客户端将无法与用户或第三方 ISV 将来开发的任何编辑器一起工作。
要使用此接口,创建新编辑器的开发人员可以让新组件实现该接口。或者,开发人员可以选择基于包装器的方法并提供实现 CellEditor 接口的伴随对象(参见 DefaultCellEditor 示例)。如果用户想将第三方 ISV 编辑器与 JTable 一起使用,但 ISV 未实现 CellEditor 接口,则包装器方法特别有用。用户可以简单地创建一个包含第 3 方编辑器对象实例的对象,并将 CellEditor API“翻译”为第 3 方编辑器的 API。
- 自从:
- 1.2
- 参见:
-
方法总结
修饰符和类型方法描述void将监听添加到编辑器停止或取消编辑时通知的列表。void告诉编辑器取消编辑并且不接受任何部分编辑的值。返回编辑器中包含的值。booleanisCellEditable(EventObject anEvent) 询问编辑器是否可以使用anEvent开始编辑。void从通知的列表中删除一个监听booleanshouldSelectCell(EventObject anEvent) 如果应选择编辑单元格,则返回 true,否则返回 false。boolean告诉编辑器停止编辑并接受任何部分编辑的值作为编辑器的值。
-
方法详情
-
getCellEditorValue
Object getCellEditorValue()返回编辑器中包含的值。- 返回:
- 编辑器中包含的值
-
isCellEditable
询问编辑器是否可以使用anEvent开始编辑。anEvent在调用组件坐标系中。编辑器不能假设安装了getCellEditorComponent返回的组件。此方法旨在供客户端使用,以避免在无法进行编辑时设置和安装编辑器组件的成本。如果可以开始编辑,则此方法返回 true。- 参数:
anEvent- 编辑器应该用来考虑是否开始编辑的事件- 返回:
- 如果可以开始编辑则为真
- 参见:
-
shouldSelectCell
如果应选择编辑单元格,则返回 true,否则返回 false。通常,返回值为 true,因为在大多数情况下应该选择编辑单元格。但是,返回 false 以防止选择更改某些类型的编辑很有用。例如。包含一列复选框的表,用户可能希望能够在不更改选择的情况下更改这些复选框。 (参见 Netscape Communicator 的示例)当然,是否使用返回值取决于编辑器的客户端,但如果不需要,则不需要。- 参数:
anEvent- 编辑器应该用来开始编辑的事件- 返回:
- 如果编辑器希望选择编辑单元格,则为 true;否则返回假
- 参见:
-
stopCellEditing
boolean stopCellEditing()告诉编辑器停止编辑并接受任何部分编辑的值作为编辑器的值。如果编辑没有停止,编辑器返回 false;这对于验证并且不能接受无效条目的编辑器很有用。- 返回:
- 如果停止编辑则为真;否则为假
-
cancelCellEditing
void cancelCellEditing()告诉编辑器取消编辑并且不接受任何部分编辑的值。 -
addCellEditorListener
将监听添加到编辑器停止或取消编辑时通知的列表。- 参数:
l- CellEditorListener
-
removeCellEditorListener
从通知的列表中删除一个监听- 参数:
l- CellEditorListener
-