HSP3 プログラミングの基礎U
前へ 目次へ 次へ 

(2) 配置オブジェクト 2

チェックボックス (chkbox)

chkbox "文字列", 変数
 チェック、未チェックの状態は、変数に格納される。
 大きさを設定しなければ、64×24ドットで表示される。

 

サンプルチェックボックスを配置する。

    dim ss, 3
    chkbox "項目1", ss(0)    ;チェックボックス
    chkbox "項目2", ss(1)
    chkbox "項目3", ss(2)
    button "OK", *ok
    stop
*ok
    ww = ""
    repeat 3
        if ss(cnt)=1 : ww = ww + "ON  "
        if ss(cnt)=0 : ww = ww + "OFF "
    loop
    mes ww
    stop

実行
 チェックボックスをクリックしてチェックを入れると1、チェックをはずすと0が変数に格納される。
 サンプルでは、3つのチェックボックスの状態をif文で判定して、ONとOFFで表示している。



コンボボックス (combox)

combox 変数, 拡張Yサイズ, リストデータ
 リストから選択したデータは、リストの先頭から0, 1, 2, ・・・というインデックスの値で変数に格納される。
 リストデータの区切りは改行コード(\n)である。
 大きさを設定しなければ、64×24ドットで表示される。

 

サンプルコンボボックスを配置する。リストのデータは「HSP」、「programming」、「language」の3つとする。

    km = "HSP\nprogramming\nlanguage"    ;リストデータ
    objsize 120,
    combox ss, , km      ;コンボボックス
    objsize 64,
    button "OK", *ok
    stop
*ok
    mes ss
    stop

実行
 2行目のobjsize命令で、コンボボックスの幅の大きさだけを設定している。
 3行目のcombox命令では、拡張Yサイズを省略している。

試してみようコンボボックスの最初に表示されているデータを「language」にする。

    km = "HSP\nprogramming\nlanguage"
    ss = 2      ;インデックスの設定
    objsize 120,
    combox ss, , km
    objsize 64,
    button "OK", *ok
    stop
*ok
    mes ss
    stop

実行コンボボックスに最初に表示されるデータが「language」になる。



リストボックス (listbox)

listbox 変数, 拡張Yサイズ, リストデータ
 リストから選択したデータは、リストの先頭から0, 1, 2, ・・・というインデックスの値で変数に格納される。
 リストデータの区切りは改行コード(\n)である。
 大きさを設定しなければ、64×100ドットで表示される。

 

サンプルリストボックスを配置する。リストのデータは「HSP」、「programming」、「language」の3つとする。

    km = "HSP\nprogramming\nlanguage"    ;リストデータ
    objsize 120,
    listbox ss, , km    ;リストボックス
    objsize 64,
    button "OK", *ok
    stop
*ok
    mes ss
    stop

実行
 3行目がlistbox命令に変わっているが、それ以外はコンボボックスのサンプルと同じである。

試してみようリストボックスの最初に選択されているデータを「language」にする。

    km = "HSP\nprogramming\nlanguage"
    ss = 2      ;インデックスの設定
    objsize 120,
    listbox ss, , km
    objsize 64,
    button "OK", *ok
    stop
*ok
    mes ss
    stop

実行リストボックスの最初に選択されているデータが「language」になる。

 

サンプルインデックス番号ではなく、データが表示されるようにする。

    sdim km, 16
    km = "HSP", "programming", "language"
    km1 = ""
    repeat length(km)
        km1 = km1 + km(cnt) + "\n"
    loop
    objsize 120,
    listbox ss, , km1
    objsize 64,
    button "OK", *ok
    stop
*ok
    mes km(ss)
    stop

実行


前へ 目次へ 次へ 
2006, © Hiroshi Masuda 

 

 

inserted by FC2 system