English help on website



input( s1, s2 ) 関数(Ver9.35対応版)
目次関数(その他関数)− input( s1, s2 ) 関数
input関数は、文字列の入力欄があるダイアログボックスを出して、入力された文字列を取得します。
$a=input( "入力してください", "" );
パラメータ1(文字列型)
ダイアログボックスに表示されるメッセージを指定します。

パラメータ2(文字列型、省略可能)
入力欄にあらかじめ入力されている内容を指定します。

パラメータ3(数値型、省略可能)
ダイアログを出す位置の決め方と、入力欄の種類を指定します。(V8.85以降)
複数行の入力欄にすることができます。
省略可能です。

パラメータ4(数値型、省略可能)
位置のX座標を指定します。位置の決め方によって計算が違います。

パラメータ5(数値型、省略可能)
位置のY座標を指定します。位置の決め方によって計算が違います。

パラメータ6(数値型、省略可能)
複数行の入力ボックスのとき、ダイアログのサイズの幅を指定します。(V9.25以降)
DPIが100%のときのピクセル単位です。DPIが200%のときは指定の2倍の値のピクセル数になります。

パラメータ7(数値型、省略可能)
複数行の入力ボックスのとき、ダイアログのサイズの高さを指定します。(V9.25以降)
DPIが100%のときのピクセル単位です。DPIが200%のときは指定の2倍の値のピクセル数になります。

返り値(文字列型)
入力された文字列を返します。


OKするとresultはtrueになります。
キャンセルするとresultはfalseになります。

パラメータ3の、ダイアログを出す位置と入力欄の種類は以下の値を指定することができます。
0x0000 通常(省略と同じ)
0x0001 画面中央
0x0002 画面左上からの位置
0x0003 画面右上からの位置
0x0004 画面左下からの位置
0x0005 画面右下からの位置
0x0006 カーソル位置
0x0011 ウィンドウ中央
0x0012 ウィンドウ左上からの位置
0x0013 ウィンドウ右上からの位置
0x0014 ウィンドウ左下からの位置
0x0015 ウィンドウ右下からの位置
さらに以下の値を論理和で指定できます。
0x0100 複数行の入力ボックス(V9.10以降)
0x0200 複数行の入力ボックスのとき折り返しあり(V9.12以降)
パラメータ3で左上/右上/左下/右下からの位置を指定しているときに、パラメータ4、パラメータ5のX,Y座標が使われます。
X,Y座標の値は、DPIが100%のときのピクセル単位です。DPIが200%のときは指定の2倍の値のピクセル数になります。
$a=input( "入力してください", "", 0x01 );          //画面の中央
$a=input( "入力してください", "", 0x15, 100, 50 ); //ウィンドウ右下からの位置
複数行の場合、改行コードは\r\nの2文字(\x0D\x0Aと同じ)で表す必要があります。
gettext等で本文から取得されたテキストは、通常\r\nになっていますが、直接文字列で表す場合は、\r\nと書く必要があります。
$a=input( "入力してください", "あ\r\nい\r\nう", 0x0300 );    //複数行
TSV/CSVモードのセル内改行のテキストなど、場面に応じて改行コードが変わる場合は、文字列の置換をする必要がある場合があります。
置換をするには、strreplace関数でできます。
$s = "あ\nい\nう\nえ\nお";
$s = strreplace($s,"\n","\r\n");
$s = input( "Test", $s, 0x0100 );
$s = strreplace($s,"\r\n","\n");
endmacro;


ウィンドウの位置指定は、message文/関数と同様の指定方法になっています。