本文へ移動
サポートシェアリングソリューション
OKWAVE Plus

このQ&Aは役に立ちましたか?

締切済み
※ ChatGPTを利用し、要約された質問です(原文:AutoLISPにて ラジオボタンを使用したDC…)

AutoLISPにてラジオボタンを使用したダイアログボックスの作成方法

2023/10/18 00:24

このQ&Aのポイント
  • LISP+DCLにてラジオボタンを使用したダイアログボックスの作成方法について
  • ラジオボタンの値の取得方法がわからず困っています。
  • 以下はAutoLISPにてラジオボタンを使用したダイアログボックスを作成するためのコードです。
※ 以下は、質問の原文です

AutoLISPにて ラジオボタンを使用したDC…

2010/11/05 17:08

AutoLISPにて ラジオボタンを使用したDCLの作成方法について

お世話になります。
LISP+DCLにてラジオボタンを使用したダイアログボックスを作成しようと考えています。
ラジオボタンの値の取得方法がわからず困っています。



下記がコードです
プログラムは、選択したラジオボタンの値を
OKボタンを押すとPrincで画面に表示するだけのものです。


以下がDCLのコードです
radio :dialog{label= "Radio Button DCL";
:radio_column{label="ラジオテスト";key="radiocolumn";
:radio_button{label="その1"; mnemonic="A";key = "A";value="1";
}
:radio_button{label="その2"; mnemonic="B";key = "B";
}
:radio_button{label="その3"; mnemonic="C";key = "C";
}
}
: boxed_row {
: button {
key = "accept";
label = "OK";
is_default = true;
}
: button {
key = "cancel";
label = "Cancel";
is_default = false;
is_cancel = true;
}
}
}


以下がLISPコードです。

(defun c:radio ()
(setq dcl_id (load_dialog "radio.dcl"))
(if (not (new_dialog "radio" dcl_id))
(exit)

)
(set_tile "radiocolumn" radio_value)
(action_tile "A" "(setq d_mode "1")")
(action_tile "B" "(setq d_mode "2")")
(action_tile "C" "(setq d_mode "3")")

;;;--- If an action event occurs, do this function
(action_tile "accept" "(ddd)(done_dialog)")
(action_tile "cancel" "(done_dialog)(EXIT)")

(start_dialog)
(unload_dialog dcl_id)
)
(princ ddd()
(princ "\n ラジオボタンの値は=")(princ d_mode);
(princ "\n The user pressed Okay!")
)

回答 (1件中 1~1件目)

2010/11/06 00:36
回答No.1

lispは専門外だが
http://www.offshorecad.com.ph/autocad/lesson/autolisp/entry676/

Aを押したとき 

(action_tile "A" "(setq d_mode "1")")
は実行されているのなら


radio :dialog{label= "Radio Button DCL";
:radio_column{label="ラジオテスト";key="radiocolumn";
:radio_button{label="その1"; mnemonic="A";key = "A";value="1";
}
:radio_button{label="その2"; mnemonic="B";key = "B";value="2";

}
:radio_button{label="その3"; mnemonic="C";key = "C";value="3";
}
}


パラメータが渡されていない

このQ&Aは役に立ちましたか?

この質問は投稿から一年以上経過しています。
解決しない場合、新しい質問の投稿をおすすめします。

質問する

お礼をおくりました

さらに、この回答をベストアンサーに選びますか?

ベストアンサーを選ぶと質問が締切られます。
なおベストアンサーを選びなおすことはできません。