HSPのリストボックスコンボボックスでもOK)に0~100の数値項目を用意する。イメージ 1


 HSP3掲示板にて、変数kazuにひたすら長ーーーい文字列を代入するスタイルのコードが掲載されてます。下のような感じですな。



// HSPコードA
sdim kazu, 512
kazu = "0\n1\n2\n (・・・長すぎるので中略・・・) \n98\n99\n100"
listbox a, 100, kazu


 数字と改行(\n)の羅列を打ち込むってのはちょっと苦痛? さすがにこの横幅はどーなんでしょ、ということで下のようにスマートに書きましょ。



// HSPコードB
sdim kazu, 512
i = 0
repeat 101
  poke kazu, i, ""+cnt+"" + "\n"
  i + strsize
loop
listbox a, 100, kazu


 poke命令にある『p3に文字列を指定した場合には、文字列データをメモリに展開し、strsizeに、書き込まれた文字列の長さを返します。』という機能を利用するのがポイント。


 コードBとの比較で、コードAは300バイトぐらい実行ファイルのサイズがでっかくなります。一方で、スピードはコードAの方が上。ただ、スピード差はゼロコンマの世界。人間の感覚では分かりゃせん。イメージ 2


 ただ、リストボックスに100個近くの項目を用意して、その中からユーザーに1つを選択させるというのは、ユーザビリティ上の問題があるので、入力ボックスでも使って純粋に数字を入力させるようにするのも手。(+アップダウンコントロールも付ければもっと)