• 締切済み

画像のランダム呈示。

screen 0,600,600,0,290,20, pos 240,280: button "OK",*gazo1 font "MS ゴシック",20 pos 100,200 mes "今から画像が呈示されるので、よく覚えてください", stop *gazo1 cls 0 buffer 1 picload "1.JPG" screen 0,600,600 pos 150,90 gcopy 1,0,0,600,600 await 5000 buffer 2 picload "2.JPG",0,600,600 screen 0,600,600 pos 150,90 gcopy 2,0,0,600,600 await 5000 buffer 3 picload "3.JPG",0,600,600 screen 0,600,600 pos 150,90 gcopy 3,0,0,600,600 await 5000 end 画像ファイルのところにてきとうなものをいれてもらえれば分かりますが、今作成しているのが、画像を約20枚 ほどランダムに呈示したいのですが、上手くプログラムができません。だれか、教えてもらえますか? この続きとして、別プログラムでこの画像を5段階で評定をし、それをテキストファイルとして保存するところまでが目標です。なにかアドバイスをもらえたら幸いです。

みんなの回答

noname#5036
noname#5036
回答No.1

私はHSPを使ったことがあるから分かりましたが、 HSPで書いたプログラムだと質問内に 書いた方が親切なのでは?(^-^) さて、用意した画像を順番に表示していくだけでいいのですか? それとも毎回毎回異なるようにしたいのですか? 順番でいいのなら repeat 20 picload ""+fn+".jpg" fn++ : wait 50 loop stop 2行目の書き方は覚えておくと便利です。 繰り返し処理によりfnには0から19までの数字が 順に入っていき、それを画像ファイル名にしています。 fn(数値)を文字列化するため ""+ が必要です。 画像は名前を「半角」で「0.jpg」から「19.jpg」を用意して ください(以下同)。1から20ではありませんので注意。 毎回ランダムに表示したいのなら randomize : dim a,20 repeat 20 : a.cnt=cnt : loop num=20 repeat 20 rnd i,num picload ""+a.i+".jpg" num-- : a.i=a.num wait 50 loop stop …で、いかがでしょう? ともに、これらのスクリだけで動きますので 適当に改造したりして組み込んでください。 なお、何をやっているのかというと 0から19までの重複しない乱数を発生させ あとは最初のスクリと同じです。 ちなみに重複しない乱数の部分はやり方を忘れてしまったので HSP掲示板過去ログ4782番(03/05/04)の方法を 組み込んで横着しました。 4781番(03/05/04)なども考え方の参考になると思うので 探して勉強してみてください。 http://www.onionsoft.net/hsp/bbs/hspbbs.cgi? また、HSPについては上の掲示板も利用すべきですね。 私のようにHSPから遠ざかって何年もたつ人間ではなく 現役バリバリのベテランさんとかが教えてくれますし。

参考URL:
http://www.onionsoft.net/hsp/bbs/hspbbs.cgi?
secface
質問者

お礼

Windbagさん、返答本当にありがとうございます。 この質問をした後にHSP言語を使用していることを書き忘れ、焦っていたところです。 本当に感謝ですm(_ _)m 回答に関しても親切にありがとうございます。 他サイトも巡回してがんばって知識を身につけて 成功させようと思います。 またアドバイスください。

関連するQ&A