Document.AddUndoUnit 方法 (Visio)

将支持 IOleUndoUnitIVBUndoUnit 接口的对象添加到 Microsoft Visio 撤消队列。

语法

表达式AddUndoUnit (pUndoUnit)

表达 一个代表 Document 对象的变量。

参数

名称 必需/可选 数据类型 说明
pUndoUnit 必需 [未知] 对支持 IOleUndoUnitIVBUndoUnit 接口的对象的引用。

返回值

Nothing

注解

有关在对象上实现 IOleUndoUnit 接口的信息,请参阅 MSDN (Microsoft Developer Network) 上的 Microsoft Platform SDK。 有关实现 IVBUndoUnit 接口的信息,请参阅 MSDN 上的“开发 Microsoft Visio 解决方案”。

示例

以下过程显示如何使用 AddUndoUnit 方法将对象添加到 Visio 撤消队列。 在将某个形状添加到活动文档时,该过程会检查该形状是否是作为撤消或恢复动作的结果添加的,如果不是,该过程将添加一个撤消单元。

该过程是 clsParticipateInUndo 类的成员,该类是在 Visio SDK 示例代码库的两个相关类模块之一中定义的,并且不能独立运行。 (另一类模块定义 类 clsVBUndoUnits.) 有关这些类模块的详细信息,请参阅 MSDN 上的 Visio SDK。

 
Private Sub mvsoDocument_ShapeAdded(ByVal vsoShape As IVShape) 
 
 Dim VBUndoUnit As clsVBUndoUnits 
 
 On Error GoTo mvsoDocument_ShapeAdded_Err 
 
 If Not (mvsoApplication Is Nothing) Then 
 
 If Not msvoApplication.IsUndoingOrRedoing Then 
 
 'Increment the count of undoable actions. 
 IncrementModuleVar 
 Debug.Print "Original Do: GetModuleVar = " & GetModuleVar 
 
 'Instantiate clsVBUndoUnit, a 
 'class that implements Visio.IVBUndoUnit. 
 Set VBUndoUnit = New clsVBUndoUnits 
 
 'Pass the current instance of the class 
 'of which this procedure is a member, 
 'clsParticipateInUndo, to the Undo unit. 
 VBUndoUnit.SetModelObject Me 
 
 'Add an Undo unit. 
 mvsoApplication.AddUndoUnit VBUndoUnit 
 
 End If 
 
 End If 
 
Exit Sub 
 
mvsoDocument_ShapeAdded_Err: 
 
 MsgBox Err.Description 
 
End Sub

支持和反馈

有关于 Office VBA 或本文档的疑问或反馈? 请参阅 Office VBA 支持和反馈,获取有关如何接收支持和提供反馈的指南。