ボタンタイルは、ダイアログボックスにボタンを表示させるタイルです。
ボタン タイル button
:button{ } で、文字をユーザー入力できる編集ボックスタイルがダイアログボックスに表示されます。
属性 label でボタンに表示させる文字を設定できます。
ボタン付きダイアログボックス
ボタンを表示させるダイアログボックスを作ります。
ボタンを押すと、以下のように少し色が変わって選択したことがわかるようになっています。
今回はは空ボタンなので押しても何も起こりません。
通常はアクションを加えて、ボタンが押されたら実行したい処理と紐づけして使います。
DCL プログラム
Test_button:dialog {label= "Button Dialog Box";
:button {label="Button";}
ok_cancel;
}
:button {label=”Button”;}
ボタンタイルを設置しラベルにButton を設定しました。
とりあえず今回は表示させるだけなので、キーもアクションも設定していません。
AutoLISP プログラム
AutoLISPプログラムからDCLを呼び出すので、上記のDCLは、JagaDCL.dclという名前で、サポートファイルの検索パス内にあるフォルダに保存してください。
(defun c:test (/ dcl_id Act TX)
(setq dcl_id (load_dialog "JagaDCL.dcl")) ;
(if (not (new_dialog "Test_button" dcl_id))
(progn
(princ "***ダイアログボックスが見つかりません***")
(exit)
));if
;-----------------------------------------------------------
;-----------------------------------------------------------
(action_tile "accept" "(done_dialog 1)")
(action_tile "cancel" "(done_dialog 0)")
;-----------------------------------------------------------
(setq Act (start_dialog))
(unload_dialog dcl_id)
;-----------------------------------------------------------
(cond
((= Act 0) (princ "ユーザーキャンセル"))
((= Act 1) (princ "OKボタン 本来はここで次の動きにつなげる")
);act1
);cond
;----------------------------------------------------------
(princ))
今回は、ボタンを表示させるだけなので、AutoLISPからはダイアログボックスを表示させる部分だけで何もボタンに対して設定をしていません。
ダイアログボックスを表示して、OK/キャンセルで閉じる部分だけです。
ボタンにアクションを付ける方法はこちらです。
まとめ
- button はボタンを表示させるタイル。
- 通常はアクションを付けて使用する。
Comments