インプットボックスを利用して入力した回数処理をする方法

インプットボックスを利用して処理する回数を入力させます。

インプットボックスに入力された文字列が数値として認識できる場合は、入力された値が数値として扱われます。

 

インプットボックスを利用して入力した回数処理をするサンプル

n = INPUT("繰り返す回数を入力してください", 10)
IFB VARTYPE(n) = VAR_EMPTY
 PRINT "キャンセルされました"
ELSEIF VAL(n) = ERR_VALUE
 PRINT "無効な値です"
ELSE
 FOR i = 1 TO n
  PRINT i + "回目処理中"
 NEXT
ENDIF

 

INPUT関数リファレンス

INPUT関数のリファレンスをマニュアルから転載します。

戻値 = INPUT( 表示メッセージ, [デフォルト値, パスワードフラグ, X, Y] ) 
引数
 表示メッセージ: インプットボックスに表示するメッセージ
 デフォルト値: デフォルトの値 として表示
 パスワードフラグ: TRUE にすると文字は全てアスタリスク表示 (デフォルト FALSE)
 X, Y: 表示位置 (デフォルトは中央)
戻値
 入力されたデータ

 ※ ファイルドロップによりファイル名の設定可 (複数選択時はタブにて結合される)

 

インプットボックスで数値が入力されたかチェックする方法

インプットボックスは文字列も数値も入力することができるので、何が入力されたのかチェックすることで予期せぬエラーを防ぐことができます。

インプットボックスでは数値として認識できるものを入力すると戻り値が数値として扱われるようです。

 

インプットボックスで数値が入力されたかチェックするサンプル

数値以外も試しに入力してみてください。

n = INPUT("数値を入力してください")
IFB VARTYPE(n) = VAR_EMPTY
 PRINT "キャンセルされました"
ELSEIF VAL(n) = ERR_VALUE
 PRINT "数値ではありません"
ELSE
 PRINT "数値です"
ENDIF

 

INPUT関数リファレンス

INPUT関数のリファレンスをマニュアルから転載します。

戻値 = INPUT( 表示メッセージ, [デフォルト値, パスワードフラグ, X, Y] ) 
引数
 表示メッセージ: インプットボックスに表示するメッセージ
 デフォルト値: デフォルトの値 として表示
 パスワードフラグ: TRUE にすると文字は全てアスタリスク表示 (デフォルト FALSE)
 X, Y: 表示位置 (デフォルトは中央)
戻値
 入力されたデータ
 (キャンセル時はEMPTY)

 ※ ファイルドロップによりファイル名の設定可 (複数選択時はタブにて結合される)

 

VARTYPE関数リファレンス

VARTYPE関数のリファレンスをマニュアルから転載します。

戻値 = VARTYPE( 変数, [変換タイプ] )
引数
 変数: 型を調べる変数
 変換タイプ: 型を変換する場合にタイプ指定
戻値
 型
  VAR_EMPTY (0)   // Empty
  VAR_NULL (1)   // Null
  VAR_SMALLINT (2) // 2バイト整数(符号付)
  VAR_INTEGER (3)  // 4バイト整数(符号付)
  VAR_SINGLE (4)  // 単精度浮動小数点値
  VAR_DOUBLE (5)  // 倍精度浮動小数点値
  VAR_CURRENCY (6) // 通貨型
  VAR_DATE (7)   // 日付型
  VAR_BSTR (8)   // 文字列型
  VAR_DISPATCH(9)  // オブジェクト
  VAR_ERROR (10)  // エラー値
  VAR_BOOLEAN (11) // ブール型
  VAR_VARIANT (12) // バリアント
  VAR_UNKNOWN (13) // 未定義のオブジェクト
  VAR_SBYTE (16)  // 1バイト整数(符号付)
  VAR_BYTE (17)   // 1バイト整数(符号なし)
  VAR_WORD (18)   // 2バイト整数(符号なし)
  VAR_DWORD (19)  // 4バイト整数(符号なし)
  VAR_INT64 (20)  // 8バイト整数(符号付)
  VAR_ARRAY(8192[$2000]) // 配列
 変換タイプが指定された場合には、変換されて値を返す

 

VAL関数リファレンス

VAL関数のリファレンスをマニュアルから転載します。

戻値 = VAL( 文字列, [エラー値] )
引数
 文字列: 数値に変える文字列
 エラー値: 数値に変換できない場合に返す値
戻値
 数値
 数値変換できない場合はエラー値を、デフォルトでは ERR_VALUE (-999999)を返す

 

セレクトボックスを表示して任意の項目を選択させる方法

複数の項目を表示させ、選択されたものによって処理を変えたいような場合にはSLCTBOX関数を利用します。

SLCTBOX関数はボタン、チェックボックス、ラジオボタン、コンボボックス、リストボックスといった種別に対応しています。

3つ以上の項目を表示させる場合にはSELECT関数と組み合わせると処理しやすいです。

 

セレクトボックスを表示して任意の項目を選択させるサンプル

SELECT SLCTBOX(SLCT_BTN, 10, "好きな項目を選んでください", "項目A", "項目B", "項目C")
 CASE -1
  MSGBOX("キャンセルされました")
 CASE SLCT_1
  MSGBOX("項目A")
 CASE SLCT_2
  MSGBOX("項目B")
 CASE SLCT_3
  MSGBOX("項目C")
 CASE 0
  MSGBOX("タイムアウト")
SELEND

セレクトボックスを表示して任意の項目を選択させる方法実行結果

 

 

SLCTBOX関数リファレンス

SLCTBOX関数のリファレンスをマニュアルから転載します。

戻値 = SLCTBOX( 種別, タイムアウト秒, [メッセージ], 項目, [項目, 項目, ...] ) 
 もしくは
戻値 = SLCTBOX( 種別, タイムアウト秒, x, y, [メッセージ], 項目, [項目, 項目, ...] ) 
引数
 種別:
   SLCT_BTN   // ボタン
   SLCT_CHK   // チェックボックス
   SLCT_RDO   // ラジオボタン
   SLCT_CMB   // コンボボックス
   SLCT_LST   // リストボックス
   SLCT_STR   // 戻り値を項目名で返す (他の種別に付加して使用)
   SLCT_NUM   // 戻り値を位置数で返す (他の種別に付加して使用)
 タイムアウト: 指定時間(秒)を過ぎるとゼロを返します (0指定でタイマーは無効)
 x, y: 第3引数と第4引数が数値であれば X位置,Y位置指定と判断します (省略型は中央表示)
 メッセージ: 表示メッセージ
 項目: 選択項目名  (配列変数で渡す事も可)
戻値
 1つ目が選択されたならば SLCT_1 が返される
 2つ目が選択されたならば SLCT_2 が返される
         :
 SLCT_CHK (チェックボックス)選択時はビット演算して返される
 SLCT_STR 付加時は項目名で返される (複数選択時はタブにて結合される)
 SLCT_NUM 付加時は位置数で返される (複数選択時はタブにて結合される)

 ※ 閉じボタンによる終了時は-1を返してくる (SLCT_CHKにてビットチェックする場合は注意)
 ※ 項目数は最大31まで (SLCT_STR、SLCT_NUM の場合は制限なし)

 

メッセージボックスを表示する方法

メッセージボックスを表示させるにはMSGBOX関数を利用します。

MSGBOX関数を利用することでOKボタンを押すだけのメッセージボックスやイエスノーを選べるメッセージボックスを表示させることができます。

 

メッセージボックスを表示するサンプル

MSGBOX("単純なメッセージボックスです")

メッセージボックスを表示する方法実行結果

 

イエスとノーに対応したメッセージボックスを表示するサンプル

SELECT MSGBOX("好きなほうを選んでください", BTN_YES or BTN_NO)
	CASE BTN_YES
		MSGBOX("「はい」が選ばれました")
	CASE BTN_NO
		MSGBOX("「いいえ」が選ばれました")
	CASE BTN_CANCEL
		MSGBOX("キャンセルされました")
SELEND

イエスとノーに対応したメッセージボックスを表示するサンプル実行結果

 

MSGBOX関数リファレンス

MSGBOX関数のリファレンスをマニュアルから転載します。

戻値 = MSGBOX( メッセージ, [表示ボタン, X, Y, フォーカスボタン] )
 引数
  メッセージ: 表示メッセージ
  表示ボタン: ボタン種別 (複数指定可、デフォルトはBTN_OK)
        BTN_YES, BTN_NO, BTN_OK, BTN_CANCEL, BTN_ABORT(中止), BTN_RETRY(再試行), BTN_IGNORE(無視)
  X、Y: 表示位置 X、Y (デフォルトは画面中央)
  フォーカスボタン: デフォルトとしてフォーカスを与えるボタン種別
 戻値
  押されたボタン種別

 

インプットボックスを利用して任意の文字列を入力する方法

インプットボックスを利用するにはINPUT関数を利用します。

このINPUT関数はインプットボックスを表示させ任意の文字列や数値を入力することができ、何回繰り返すか入力するような場合に役立ちます。

数値として認識される文字列を入力した場合は数値として変数に代入されるようです。

 

インプットボックスを利用して任意の文字列を入力するサンプル

n = INPUT("繰り返す回数を入力してください", 10)
print "入力された数は" + n + "でした"

インプットボックスを利用して任意の文字列を入力する方法実行結果

 

キャンセルされた場合も考慮したインプットボックスで任意の文字列を入力するサンプル

キャンセルされた場合も考慮するには変数がemptyかどうかをVARTYPE関数で判断します。

n = INPUT("繰り返す回数を入力してください", 10)
IFB VARTYPE(n) = VAR_EMPTY
 PRINT "キャンセルされました"
ELSE
 PRINT "入力された数は" + n + "でした"
ENDIF

 

INPUT関数リファレンス

INPUT関数のリファレンスをマニュアルから転載します。

戻値 = INPUT( 表示メッセージ, [デフォルト値, パスワードフラグ, X, Y] ) 
引数
 表示メッセージ: インプットボックスに表示するメッセージ
 デフォルト値: デフォルトの値 として表示
 パスワードフラグ: TRUE にすると文字は全てアスタリスク表示 (デフォルト FALSE)
 X, Y: 表示位置 (デフォルトは中央)
戻値
 入力されたデータ
 (キャンセル時はEMPTY)

 ※ ファイルドロップによりファイル名の設定可 (複数選択時はタブにて結合される)