SLCTBOX関数(セレクトボックス):UWSC,

// セレクトボックス
戻値 = 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 の場合は制限なし)

【例:サンプル】
// ボタン選択
SELECT SLCTBOX(SLCT_BTN, 10, “どれか選んでね”, “AAAA”, “BBBB”, “CCCC”)
 CASE SLCT_1
  FUKIDASI(“1番目が選ばれました”)
 CASE SLCT_2
  FUKIDASI(“2番目が選ばれました”)
 CASE SLCT_3
  FUKIDASI(“3番目が選ばれました”)
 CASE 0
  FUKIDASI(“タイムアウトしました”)
SELEND
Sleep(3)
FUKIDASI()

// チェックボックス(複数選択の可能性あり)
ans = SLCTBOX(SLCT_CHK, 0, “必要なものをチェックしてね”, _ // 行結合
    ”AAAA”, “BBBB”, “CCCC”)
wks = “”
if (ans and SLCT_1) <> 0 then wks = wks + “1番目”
if (ans and SLCT_2) <> 0 then wks = wks + “2番目”
if (ans and SLCT_3) <> 0 then wks = wks + “3番目”
FUKIDASI(wks + “が選ばれました”)
Sleep(3)
FUKIDASI()

// CASE の定義は文字でも数値でも変数でもOK
wkmoji = “BBB”
SELECT INPUT(“なんか入れて”)
 CASE “AAA”       // 文字
  FUKIDASI(“AAA”)
 CASE wkmoji       // 変数
  FUKIDASI(wkmoji)
 CASE 3         // 数値
  FUKIDASI(“3”)
 DEFAULT
  FUKIDASI(“訳わかんないです”)
SELEND
Sleep(3)

// ポップアップメニュ
dim pp[7] = “aaa”, “bbb”, “ccc”, “{111″, “222″, “333}”, “ddd” // 111, 222, 333 は cccのサブメニュ
x = POPUPMENU(pp)
ifb x >= 0
 print pp[x] + “が選ばれた”
else
 print “キャンセルされた”
endif

このエントリーをはてなブックマークに追加

コメントを残す