Vla-insertmenuinmenubar

提供:GizmoLabs - だいたい CAD LISP なサイト
2015年10月30日 (金) 14:11時点におけるGizmon (トーク | 投稿記録)による版 (ページの作成:「{{AutoLISP}} ; 構文 : (vla-insertmenuinmenubar ''vla-object'' ''MenuName'' ''Index'') ; 機能 : メニューを CAD のメニュー バーに挿入する。 ; 引...」)
(差分) ← 古い版 | 最新版 (差分) | 新しい版 → (差分)
構文
(vla-insertmenuinmenubar vla-object MenuName Index)


機能
メニューを CAD のメニュー バーに挿入する。


引数
  • vla-object … VLAオブジェクト
  • MenuName … メニュー バーに挿入するポップアップ メニュー名の文字列。
  • Index … メニューのポップアップ メニューを配置するインデックス。
  • インデックスは整数または文字列でなければならない。
  • 整数の場合、Index は 0 から N-1 までとし、この場合 N はメニューバー内のポップアップ メニューの数。   
  • 文字列の場合、ポップアップ メニューの名前はメニューに表示されるアンダースコアを含んでいなければならない。


戻り値
なし


サンプル
(vl-load-com)
(defun c:Example_InsertMenuInMenuBar()
    ;; テストメニューを作成して表示するサンプル
    (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-InsertMenuInMenuBar (vla-get-Menus currMenuGroup) "TestMenu" "")

    ;; メニューバーを表示
    (vla-SetVariable doc "MENUBAR" 1)
)


関連事項