Vla-get-onmenubar

提供:GizmoLabs - だいたい CAD LISP なサイト
2015年10月30日 (金) 14:18時点におけるGizmon (トーク | 投稿記録)による版 (ページの作成:「{{AutoLISP}} ; 構文 : (vla-get-onmenubar ''vla-object'') ; 機能 : 指定されたポップアップ メニューがメニュー バーに表示されるかどうか...」)
(差分) ← 古い版 | 最新版 (差分) | 新しい版 → (差分)
構文
(vla-get-onmenubar vla-object)


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


引数
  • vla-object … VLAオブジェクト


戻り値
ブール値
  • vlax-True: このメニューはメニュー バー上にある。
  • vlax-False: このメニューはメニュー バー上にない。


サンプル
(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) " をメニューバーにコールしたけどないし."))
    )
    
    ;; Remove the menu from the menu bar
    (vla-RemoveMenuFromMenuBar (vla-get-Menus currMenuGroup) "TestMenu")
    (if (= (vla-get-OnMenuBar newMenu) :vlax-true)
       (alert (strcat "メニュー " (vla-get-Name newMenu) " をメニューバーにコール."))
        (alert (strcat "メニュー " (vla-get-Name newMenu) " をメニューバーにコールしたけどないし."))
    )
)


関連事項