IOleUndoUnit 接口 (ocidl.h)
用作撤消单元上的main接口。 撤消单元封装撤消或恢复单个操作所需的信息。
当对象的状态发生更改并且需要创建撤消单元时,它首先需要知道哪些父单元处于打开状态。 它调用 IOleUndoManager::GetOpenParentState 方法来确定这一点。 如果调用返回S_FALSE,则没有启用父级。 如果调用返回S_OK但设置了UAS_NOPARENTENABLE标志,则打开的父级是禁用父级。 在上述任一情况下,对象在撤消管理器上调用 IOleUndoManager::D iscardFrom (NULL) ,并跳过创建撤消单元。
如果方法返回S_OK,但设置了UAS_BLOCKED标志,则打开的父级是阻止父级。 对象不需要创建撤消单元,因为它会立即被丢弃。 如果返回值为S_OK且两个位标志均未设置,则对象将创建撤消单元,并在撤消管理器上调用 IOleUndoManager::Add 。
对象应保留指向撤消管理器的指针。
继承
IOleUndoUnit 接口继承自 IUnknown 接口。 IOleUndoUnit 还具有以下类型的成员:
方法
IOleUndoUnit 接口包含以下方法。
IOleUndoUnit::D o 指示撤消单元执行其操作。 请注意,如果它包含子撤消单位,则它还必须调用其 Do 方法。 |
IOleUndoUnit::GetDescription 检索可在撤消或重做用户界面中使用的撤消单元的说明。 |
IOleUndoUnit::GetUnitType 检索撤消单元的 CLSID 和类型标识符。 |
IOleUndoUnit::OnNextAdd 通知集合中的最后一个撤消单元已添加新单元。 |
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows 2000 Professional [仅限桌面应用] |
最低受支持的服务器 | Windows 2000 Server [仅限桌面应用] |
目标平台 | Windows |
标头 | ocidl.h |