java.lang.Object
javax.swing.undo.AbstractUndoableEdit
javax.swing.undo.StateEdit
- 所有已实现的接口:
-
Serializable
,UndoableEdit
StateEdit是用于更改状态的对象的通用编辑。正在编辑的对象必须符合StateEditable接口。
此编辑类通过在编辑发生之前和之后要求对象将其状态存储在Hashtable中来工作。在撤消或重做时,告诉对象从这些Hashtable中恢复其状态。
StateEdit的使用如下:// 在对象的“before”状态期间创建编辑 StateEdit newEdit = new StateEdit(myObject); // 修改对象 myObject.someStateModifyingMethod(); // 在完成修改对象时“结束”编辑 newEdit.end();
请注意,当StateEdit结束时,它会从Hashtable中删除冗余状态 - 状态Hashtable不能保证在存储状态时包含所有放入其中的键/值!
- 参见:
-
Field Summary
Modifier and TypeFieldDescriptionprotected StateEditable
正在编辑的对象编辑后的状态信息编辑前的状态信息protected static final String
废弃的RCS版本标识。protected String
撤消/重做演示名称Fields declared in class javax.swing.undo.AbstractUndoableEdit
RedoName, UndoName
-
Constructor Summary
ConstructorDescriptionStateEdit
(StateEditable anObject) 创建并返回一个新的StateEdit。StateEdit
(StateEditable anObject, String name) 创建并返回一个带有演示名称的新StateEdit。 -
Method Summary
Methods declared in class javax.swing.undo.AbstractUndoableEdit
addEdit, canRedo, canUndo, die, getRedoPresentationName, getUndoPresentationName, isSignificant, replaceEdit, toString
-
Field Details
-
RCSID
废弃的RCS版本标识。- 参见:
-
object
正在编辑的对象 -
preState
编辑前的状态信息 -
postState
编辑后的状态信息 -
undoRedoName
撤消/重做演示名称
-
-
Constructor Details
-
StateEdit
创建并返回一个新的StateEdit。- 参数:
-
anObject
- 要监视状态更改的对象 - 参见:
-
StateEdit
创建并返回一个带有演示名称的新StateEdit。- 参数:
-
anObject
- 要监视状态更改的对象 -
name
- 用于此编辑的演示名称 - 参见:
-
-
Method Details
-
init
初始化状态编辑。- 参数:
-
anObject
- 要监视状态更改的对象 -
name
- 用于此编辑的演示名称
-
end
public void end()获取StateEditable对象的编辑后状态并结束编辑。 -
undo
public void undo()告诉被编辑的对象在编辑前应用状态- 指定者:
-
undo
在接口UndoableEdit
- 覆盖:
-
undo
在类AbstractUndoableEdit
- 参见:
-
redo
public void redo()告诉被编辑的对象在编辑后应用状态- 指定者:
-
redo
在接口UndoableEdit
- 覆盖:
-
redo
在类AbstractUndoableEdit
- 参见:
-
getPresentationName
获取此编辑的演示名称- 指定者:
-
getPresentationName
在接口UndoableEdit
- 覆盖:
-
getPresentationName
在类AbstractUndoableEdit
- 返回:
- 空字符串 ""
- 参见:
-
removeRedundantState
protected void removeRedundantState()删除状态Hashtable中的冗余键/值。
-