Vla-put-onmenubar

提供:GizmoLabs - だいたい CAD LISP なサイト
構文
(vla-put-onmenubar vla-object bool)


機能
指定されたポップアップ メニューがメニュー バーに表示を設定する。


引数
  • vla-object … VLAオブジェクト
  • bool … ブール値
  • vlax-True: このメニューをメニュー バーに表示。
  • vlax-False: このメニューをメニュー バーに非表示。


戻り値
nil
サンプル
(vl-load-com)
(defun c:Example_OnMenuBar()
    ;; テストメニューを作成追加して表示してから非表示にするサンプル
    (setq acadObj (vlax-get-acad-object))
    (setq currMenuGroup (vla-Item (vla-get-MenuGroups acadObj) 0))
    
    ;; 新規メニュー作成
    (setq newMenu (vla-Add (vla-get-Menus currMenuGroup) "TestMenu"))
    
    ;; メニューアイテムを追加
    ;; マクロは、"ESC ESC _open "
    (setq openMacro (strcat (Chr 3) (Chr 3) (Chr 95) "open" (Chr 32)))
    (setq newMenuItem (vla-AddMenuItem newMenu (1+ (vla-get-Count newMenu)) "Open" openMacro))
    
    ;; メニューバーを表示
    (vla-InsertInMenuBar newMenu (1+ (vla-get-Count (vla-get-MenuBar acadObj))))
    (if (= (vla-get-OnMenuBar newMenu) :vlax-true)
        (alert (strcat "メニュー " (vla-get-Name newMenu) " をメニューバーにコール."))
        (alert (strcat "メニュー " (vla-get-Name newMenu) " をメニューバーにコールしたけどないし."))
    )
    
    ;; メニューバーを非表示
    (vla-put-OnMenuBar newMenu :vlax-False)
    (if (= (vla-get-OnMenuBar newMenu) :vlax-true)
       (alert (strcat "メニュー " (vla-get-Name newMenu) " をメニューバーにコール."))
        (alert (strcat "メニュー " (vla-get-Name newMenu) " をメニューバーにコールしたけどないし."))
    )
)


関連事項