ドキュメント レベルのイベントは、VBA プロジェクトがロードされたときに自動的に有効化されます。
VBA でドキュメント レベルのイベントのイベント ハンドラを記述するには、単純にコード ウィンドウの[オブジェクト]ドロップダウン リストから AcadDocument を選択します。そのドキュメントで使用可能なイベントが[プロシージャ]ドロップダウン リストに表示されます。ハンドラを記述したいイベントを選択するだけで、ハンドラ スケルトンが自動的に作成されます。
この方法で作成したイベント ハンドラは、現在のアクティブな図面に適用されることに注意してください。
次の例では、BeginShortcutMenuDefault イベントのイベント ハンドラを使用して、"OpenDWG" というメニュー項目をショートカット メニューの先頭に追加します。その後 EndShortcutMenu イベントのイベント ハンドラが、追加されたメニュー項目を削除するので、変更がユーザのメニュー設定に常に保存されることにはなりません。
Private Sub AcadDocument_BeginShortcutMenuDefault _
(ShortcutMenu As AutoCAD.IAcadPopupMenu)
On Error Resume Next
' Add a menu item to the cursor menu
Dim newMenuItem As AcadPopupMenuItem
Dim openMacro As String
openMacro = Chr(vbKeyEscape) + Chr(vbKeyEscape) + "_open "
Set newMenuItem = ShortcutMenu.AddMenuItem _
(0, Chr(Asc("&")) _
+ "OpenDWG", openMacro)
End Sub
Private Sub AcadDocument_EndShortcutMenu _
(ShortcutMenu As AutoCAD.IAcadPopupMenu)
On Error Resume Next
ShortcutMenu.Item("OpenDWG").Delete
End Sub