「Getkword」の版間の差分
編集の要約なし |
細編集の要約なし |
||
18行目: | 18行目: | ||
; サンプル | ; サンプル | ||
: 次の例では、初めの initget 関数の呼び出しでキーワードのリスト(Yes と No)を設定すると同時に、次の getkword 関数呼び出しでの null 入力を禁止している(bits 引数の値が 1)。 | : 次の例では、初めの initget 関数の呼び出しでキーワードのリスト(Yes と No)を設定すると同時に、次の getkword 関数呼び出しでの null 入力を禁止している(bits 引数の値が 1)。 | ||
<pre class="brush:autolisp;"> | |||
(initget 1 "Yes No") | |||
nil | |||
(setq x (getkword "よろしいですか?[はい(Y)/いいえ(N)] ")) | |||
よろしいですか?[はい(Y)/いいえ(N)]Y | |||
"Yes" | |||
; 次の例は、getkword 関数に対する応答で、ユーザが無効な入力を行ったときにどうなるかを示している。 | |||
(initget 1 "Yes No") | |||
nil | |||
(setq x (getkword "よろしいですか?[はい(Y)/いいえ(N)] ")) | |||
よろしいですか?[はい(Y)/いいえ(N)] x | |||
そのようなオプション キーワードはありません. | |||
よろしいですか?[はい(Y)/いいえ(N)]Y | |||
"Yes" | |||
!x | |||
"Yes" | |||
; ユーザの応答が、先の initget 関数で定義されたキーワードの 1 つではなかったため、警告メッセージを表示した後に、msg 引数で与えられた文字列を使用して、ユーザに再度プロンプトが表示された。 | |||
</pre> | |||
2013年6月15日 (土) 11:16時点における版
- 構文
- (getkword [msg])
- 機能
- ユーザがキーワードを入力するまで待機(一時停止)し、入力されたキーワードを返す。
- 有効なキーワードは、getkword 関数を呼び出す前に initget 関数で設定する。getkword 関数の要求に対して、ユーザは別の LISP 式を入力することはできない。
- * IJCADでは initget 関数で設定されたキーワードはプロンプトメニューとして表示される。
- 引数
-
- msg : ユーザに表示するプロンプト文字列。省略した場合、プロンプトは表示されない。
- 戻り値
- ユーザが入力したキーワードを示す文字列。キーワードを入力せずに[Enter]を押した場合は、nil。この関数は、キーワードを定義する initget 関数を事前に呼び出さなかった場合も、nil を返す。
- ユーザが有効なキーワード以外の値を入力した場合、警告メッセージを表示し、再度入力を求める。
- サンプル
- 次の例では、初めの initget 関数の呼び出しでキーワードのリスト(Yes と No)を設定すると同時に、次の getkword 関数呼び出しでの null 入力を禁止している(bits 引数の値が 1)。
(initget 1 "Yes No") nil (setq x (getkword "よろしいですか?[はい(Y)/いいえ(N)] ")) よろしいですか?[はい(Y)/いいえ(N)]Y "Yes" ; 次の例は、getkword 関数に対する応答で、ユーザが無効な入力を行ったときにどうなるかを示している。 (initget 1 "Yes No") nil (setq x (getkword "よろしいですか?[はい(Y)/いいえ(N)] ")) よろしいですか?[はい(Y)/いいえ(N)] x そのようなオプション キーワードはありません. よろしいですか?[はい(Y)/いいえ(N)]Y "Yes" !x "Yes" ; ユーザの応答が、先の initget 関数で定義されたキーワードの 1 つではなかったため、警告メッセージを表示した後に、msg 引数で与えられた文字列を使用して、ユーザに再度プロンプトが表示された。
関連事項
- initget 関数