「Getstring」の版間の差分
編集の要約なし  | 
				編集の要約なし  | 
				||
| 18行目: | 18行目: | ||
; サンプル  | ; サンプル  | ||
<pre class="brush: autolisp;">  | |||
  (setq s (getstring "あなたの名前は? "))  |   (setq s (getstring "あなたの名前は? "))  | ||
  あなたの名前は? Gary  |   あなたの名前は? Gary  | ||
  '''"Gary"'''  |   '''"Gary"'''  | ||
  (setq s (getstring T "あなたの氏名は? "))  |   (setq s (getstring T "あなたの氏名は? "))  | ||
  あなたの氏名は? 草薙 素子  |   あなたの氏名は? 草薙 素子  | ||
  '''"草薙 素子"'''  |   '''"草薙 素子"'''  | ||
  (setq s (getstring T "ファイル名を入力: "))  |   (setq s (getstring T "ファイル名を入力: "))  | ||
  ファイル名を入力: c:¥my documents¥vlisp¥secrets  |   ファイル名を入力: c:¥my documents¥vlisp¥secrets  | ||
  '''"c:¥¥my documents¥¥vlisp¥¥secrets"'''  |   '''"c:¥¥my documents¥¥vlisp¥¥secrets"'''  | ||
(= "" (getstring "空Enterして下さい"))  | |||
T  | |||
(= nil (getstring "空Enterして下さい")) ; <- これが Tになる場合もある  | |||
nil  | |||
</pre>  | |||
-----  | -----  | ||
関連事項  | 関連事項  | ||
2010年8月9日 (月) 16:07時点における版
- 構文
 - (getstring [cr] [msg])
 
  
- 機能
 - ユーザが文字列を入力するまで待機(一時停止)し、入力された文字列を返す。
 - getstring 関数の要求に対して、ユーザは別の LISP 式を入力することはできない。
 
- 引数
 - 
- cr : この引数が指定され、nil でなければ、ユーザは入力文字列内にスペースを含めることができる(文字列の入力を終了するには、[Enter]を押す必要がある)。それ以外の場合、入力文字列はスペースまたは[Enter]で終了する。
 - msg : ユーザに表示するプロンプト文字列。
 
 
- 戻り値
 - ユーザが入力した文字列。ユーザが文字列を入力せずに[Enter]を押した場合は、各種の資料ではという nil という記述が見受けられるが、 ""(空文字)が変える。
 - 文字列の長さが 132 文字を越える場合は、最初の 132 文字だけを返す。
 - 入力文字列に含まれている円記号(\)は、2つの円記号(\\)に変換する。これにより、ファイル名パスを含む戻り値を、他の関数で使用できる。
 
- サンプル
 
(setq s (getstring "あなたの名前は? ")) あなたの名前は? Gary '''"Gary"''' (setq s (getstring T "あなたの氏名は? ")) あなたの氏名は? 草薙 素子 '''"草薙 素子"''' (setq s (getstring T "ファイル名を入力: ")) ファイル名を入力: c:¥my documents¥vlisp¥secrets '''"c:¥¥my documents¥¥vlisp¥¥secrets"''' (= "" (getstring "空Enterして下さい")) T (= nil (getstring "空Enterして下さい")) ; <- これが Tになる場合もある nil
関連事項
- initget 関数