AddSeparator メソッド(ActiveX)

既存のメニューまたはツールバーに区分線を追加します。

サポートされているプラットフォーム: Windows のみ

構文と要素

VBA:

RetVal = object.AddSeparator(Index)
object

タイプ: PopupMenuToolbar

このメソッドが適用されるオブジェクト。

Index

アクセス: 入力のみ

タイプ: バリアント型

項目を追加するメニューまたはツールバーのインデックス位置。

整数の場合はメニュー内の与えられた位置を指定する 1 から N-1 までとします。N はポップアップ メニュー内のオブジェクトの数です。区分線は、指定されたインデックス位置の直前に追加されます。メニューまたはツールバーの最後に区分線を加えるには、インデックスを N より大きく設定します。

文字列が指定され、インデックスされた項目が存在しない場合、区分線はメニューまたはツールバーの最後に追加されます。

戻り値(RetVal)

タイプ: PopupMenuItemToolbarItem

新しく作成される区分線の項目

注意

区分線をメニューまたはツールバーの最初の項目位置に置くことはできません。すなわち、区分線をインデックス 0 の位置に追加することはできません。

また、区分線を他の区分線の直後に置くこともできません。

VBA:

Sub Example_AddSeparator()
    ' This example creates a new menu called TestMenu and inserts a menu item
    ' and a separator into it. The menu is then displayed on the menu bar.
    ' To remove the menu after execution of this macro, use the Customize Menu
    ' option from the Tools menu.
    
    Dim currMenuGroup As acadMenuGroup
    Set currMenuGroup = ThisDrawing.Application.MenuGroups.Item(0)
    
    ' Create the new menu
    Dim newMenu As AcadPopupMenu
    Set newMenu = currMenuGroup.Menus.Add("TestMenu")
    
    ' Add a menu item to the new menu
    Dim newMenuItem As AcadPopupMenuItem
    Dim openMacro As String
    
    ' Assign the macro string the VB equivalent of "ESC ESC _open "
    openMacro = Chr(3) & Chr(3) & Chr(95) & "open" & Chr(32)
    
    Set newMenuItem = newMenu.AddMenuItem(newMenu.count + 1, "Open", openMacro)
    
    ' Add a separator to the end of the menu
    Dim newMenuSeparator As AcadPopupMenuItem
    Set newMenuSeparator = newMenu.AddSeparator("")
    
    ' Display the menu on the menu bar
    newMenu.InsertInMenuBar ThisDrawing.Application.MenuBar.count + 1
    
End Sub

Visual LISP:

(vl-load-com)
(defun c:Example_AddSeparator()
    ;; This example creates a new menu called TestMenu and inserts a menu item
    ;; and a separator into it. The menu is then displayed on the menu bar.
    ;; To remove the menu after execution of this macro, use the Customize Menu
    ;; option from the Tools menu.
    (setq acadObj (vlax-get-acad-object))
    (setq currMenuGroup (vla-Item (vla-get-MenuGroups acadObj) 0))

    ;; Create the new menu
    (setq newMenu (vla-Add (vla-get-Menus currMenuGroup) "TestMenu"))
    
    ;; Add a menu item to the new menu
    (setq openMacro (strcat (Chr 3) (Chr 3) (Chr 95) "open" (Chr 32)))
    (setq newMenuItem (vla-AddMenuItem newMenu (1+ (vla-get-Count newMenu)) "Open" openMacro))
    
    ;; Add a separator to the end of the menu
    (setq newMenuSeparator (vla-AddSeparator newMenu ""))
    
    ;; Display the menu on the menu bar
    (vla-InsertInMenuBar newMenu (1+ (vla-get-Count (vla-get-MenuBar acadObj))))
    
    ;; Display the menu bar
    (vla-SetVariable doc "MENUBAR" 1)
)