回顾Visio的对象
Application对象
Window对象
Document对象
Page对象
Master对象
Shape对象
Cell对象
Visio对象还有
Selection对象
Connects对象
Style对象
Keyboard
Mouse
DataRecordset
Application对象的事件
右键菜单:MarkerEvent
程序退出前:BeforeQuit
模态窗口关闭后:AfterModal
模态窗口出现前:BeforeModal
Visio事件完成:NoEventsPending
程序激活:AppActivated
程序挂起前:BeforeSuspend
进入获取退出Scopes:EnterScope/ExitScope
用户动作响应提示:QueryCancelQuit
… …
Window对象的事件
窗口打开:WindowOpened
窗口改变:WindowChanged
窗口关闭前:BeforeWindowClosed
窗口关闭取消:WindowCloseCanceled
窗口选区Shape被删除: BeforeWindowSelDelete
窗口页面改变前: BeforeWindowPageTurn
窗口页面改变后:WindowTurnedToPage
Visio窗口改变:WindowActivated
… …
Document对象事件
文档添加:DocumentAdded
文档创建:DocumentCreated
打开文档:DocumentOpened
文档改变:DocumentChanged
文档保存:DocumentSaved
文档关闭:BeforeDocumentClose
… …
Page对象事件
页面添加:PageAdded
页面改变:PageChanged
页面删除:BeforePageDelete
取消页面删除:PageDeleteCanceled
… …
Shape对象事件
Shape删除前:BeforeShapeDelete
Shape添加:ShapeAdded
Shape改变:ShapeChanged
Shape删除后: ShapesDeleted
Shape文本编辑:BeforeShapeTextEdit
Shape文本编辑退出:ShapeExitedTextEdit
Shape 连接添加:ShapeLinkAdded
Shape 连接删除: ShapeLinkDeleted
Shape 组合变化: ShapeParentChanged
Master对象事件
模具添加:MasterAdded
模具改变:MasterChanged
模具删除:BeforeMasterDelete
取消模具删除:MasterDeleteCanceled
模具删除提示:QueryCancelMasterDelete
… …http://shanzhizi.blog.51cto.com/
Cell对象事件
Cell的值改变:CellChanged
Cell的formula 改变:FormulaChanged
Selection对象事件
选区删除前:BeforeSelectionDelete
选区删除提示:QueryCancelSelectionDelete
选区增加:SelectionAdded
选区改变:SelectionChanged
选区取消:SelectionDeleteCanceled
… …http://shanzhizi.blog.51cto.com/
Connects对象事件
连接添加:ConnectionsAdded
连接移除:ConnectionsDeleted
Style对象事件
Style添加:StyleAdded
Style改变: StyleChanged
Style删除前: BeforeStyleDelete
Style取消删除: StyleDeleteCanceled
Style删除提示:QueryCancelStyleDelete
Keyboard对象事件
KeyDown
KeyPress
KeyUp
Mouse对象事件
MouseDown
MouseMove
MouseUp
事件的处理
实现接口IVisEventProc
public class EventSink : IVisEventProc
使用AddAdvise建立事件侦听
documentEvents.AddAdvise( (unchecked((short)VisEventCodes.visEvtAdd) + (short)VisEventCodes.visEvtShape), (IVisEventProc)this, sink, "ShapeAdd");
实现object IVisEventProc.VisEventProc()函数,和具体处理函数挂钩