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
FieldsModifier and TypeFieldDescriptionprotected StateEditable正在编辑的对象编辑后的状态信息编辑前的状态信息protected static final String废弃的RCS版本标识。protected String撤消/重做演示名称Fields declared in class javax.swing.undo.AbstractUndoableEdit
RedoName, UndoName -
Constructor Summary
ConstructorsConstructorDescriptionStateEdit(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中的冗余键/值。
-