Vla-get-taborder
- 構文
- (vla-get-taborder vla-object )
- 機能
- レイアウトのタブの順序を取得する。
- 引数
-
- vla-object … Layout のVLAオブジェクト
- 戻り値
- レイアウトのタブの順序
- MEMO:このプロパティは、レイアウトをタブ コントロールに表示する順序をコントロールする。タブの順序は、データベース内の全レイアウト間で固有でありシーケンシャルでなければならない。
- モデル空間タブはゼロ(0)のタブ順序でなければならない。ペーパー空間の各タブは 1 以上のタブ順序を持たなければならない。
- サンプル
(vl-load-com) (defun c:Example_TabOrder() ;; 2 つの新しいレイアウトを作成して、アルファベット順にするレイアウトのタブ オーダーを変更するサンプル (setq acadObj (vlax-get-acad-object)) (setq doc (vla-get-ActiveDocument acadObj)) ;; レイアウトを作成 (setq Layout1 (vla-Add (vla-get-Layouts doc) "あ VIEW")) (setq Layout2 (vla-Add (vla-get-Layouts doc) "うん VIEW")) (setq SortIt (list) TabCount 0) ;; 内部で五十音順に並べ替える (while (>= (1- (vla-get-Count (vla-get-Layouts doc))) TabCount) (setq AddedTab :vlax-false) (setq TabName (vla-get-Name (vla-Item (vla-get-Layouts doc) TabCount))) (if (/= (strcase TabName) "MODEL") ;; モデルはスキップ (progn (setq SortIt (append SortIt (list TabName))) ;; リストの先頭に追加 )) (setq TabCount (1+ TabCount)) ) ;; レイアウトの名前を並べ替える (setq SortIt (acad_strlsort SortIt) SortCount 1) ;; タブオーダーを更新 (foreach name SortIt (progn (setq tempLayout (vla-Item (vla-get-Layouts doc) name)) (vla-put-TabOrder tempLayout SortCount) (setq SortCount (1+ SortCount)) )) ;;------------------------------- ;; 新しいタブオーダーを読み込み ;;------------------------------- (setq msg "新しいタブオーダーは : \n" TabCount 0) (while (>= (1- (vla-get-Count (vla-get-Layouts doc))) TabCount) (setq TabName (vla-get-Name (vla-Item (vla-get-Layouts doc) TabCount))) (if (/= (strcase TabName) "MODEL") ;; モデルを変更 (progn (setq TabOrder (vla-get-TabOrder (vla-Item (vla-get-Layouts doc) TabCount))) (setq msg (strcat msg "(" (itoa TabOrder) ") " TabName "\n")) ) ) (setq TabCount (1+ TabCount)) ) (alert msg) )
関連事項