Vla-addtoolbarbutton

提供:GizmoLabs - だいたい CAD LISP なサイト
構文
(vla-addtoolbarbutton vla-object Index Name HelpString Macro FlyoutButton)


機能
ツールバー項目をツールバーの指定した位置に追加する。


引数
  • vla-object … ToolBar の VLAオブジェクトオブジェクト
  • Index … ツールバー項目を追加するツールバーのインデックス位置。インデックスは整数または文字列でなければならない。整数を指定する場合は 0 から N-1 まで(この場合 N はツールバー内のオブジェクトの数)。この項目は、指定されたインデックス位置の直前に追加される。
  • Name … ツールバー ボタンを識別する文字列。この文字列は、英数字、ダッシュ(-)、アンダースコア(_)で構成されていなければならずこれら以外の句読点を使うことはできない。この文字列は、カーソルをツールバー ボタンの上に置いたときにツールチップとして表示される。
  • HelpString … ステータス行に表示される文字列。
  • Macro … この項目に関連付けられたマクロの名前。
  • FlyoutButton … 新しいボタンがフライアウト ボタンかそうでないかを示すブール型変数。ボタンがフライアウト ボタンである場合は、このパラメータを :vlax-True に設定しなければならない。ボタンがフライアウト ボタンでない場合は、このパラメータを :vlax-False に設定するか省略することができる。


戻り値
nil


サンプル
(vl-load-com)
(defun c:Example_Float()
    ;;「TestToolbar」という名の新しいツールバーを作成し、3つのボタンを挿入。
    ;; ツールバーをフローティングツールバー、ドッキングで表示。
    (setq currMenuGroup (vla-Item (vla-get-MenuGroups (vlax-get-acad-object)) 0))

    ;; 新しいツールバーを生成
    (setq newToolBar (vla-Add (vla-get-Toolbars currMenuGroup) "TestToolbar"))

    ;; 生成したツールバーに3つのボタンを追加
    ;; ボタンの割り当てマクロは同じ
    (setq openMacro (strcat (Chr 3) (Chr 3) (Chr 95) "open" (Chr 32)))

    (setq newButton1 (vla-AddToolbarButton newToolBar "" "NewButton1" "Open a file." openMacro))
    (setq newButton2 (vla-AddToolbarButton newToolBar "" "NewButton2" "Open a file." openMacro))
    (setq newButton3 (vla-AddToolbarButton newToolBar "" "NewButton3" "Open a file." openMacro))

    ;; ツールバー表示
    (vla-put-Visible newToolBar :vlax-true)

    ;; 画面の左側にあるツールバーを固定。
    (vla-Dock newToolBar acToolbarDockLeft)

    ;; それがドッキングされているかどうかを確認するために、ツールバーを照会します。
    (if (= (vla-get-DockStatus newToolBar) acToolbarFloating)
        (alert "ツールバーはフローティング")
        (alert "ツールバーはドッキング")
    )

    ;; ツールバーをフロート
    (vla-Float newToolBar 200 200 1)

    (if (= (vla-get-DockStatus newToolBar) acToolbarFloating)
        (alert "The toolbar is floating.")
        (alert "The toolbar is docked.")
    )
)

関連事項