ひとつのボタンで画像を切り替える への返答

投稿で使用できる特殊コードの説明。(別タブで開きます。)
本名は入力しないようにしましょう。
投稿した後で削除するときに使うパスワードです。返答があった後は削除できません。
返答する人が目安にします。相手が小学生か社会人かで返答の仕方も変わります。
最初の投稿が質問の場合、質問者が解決時にチェックしてください。(以降も追加書き込み・返信は可能です。)
※「過去ログ」について書くときはその過去ログのURLも書いてください。

以下の返答は逆順(新しい順)に並んでいます。

投稿者 学生  (学生) 投稿日時 2009/8/25 23:37:22
たくさんの返答ありがとうございました!


無事に画像を切り替えることができるようになりました!
投稿者 (削除されました)  () 投稿日時 2009/8/25 22:56:31
(削除されました)
投稿者 (削除されました)  () 投稿日時 2009/8/25 22:53:49
(削除されました)
投稿者 るきお  (社会人) 投稿日時 2009/8/25 22:14:41
こんにちは。

VBのバージョンがわからないので、2002以降と仮定した上で、
仕組み的にシンプルなものを紹介します。
るしぇさんのロジックの具体的なコードともいえます。

Public Class Form1

    Dim ClickCount As Integer

    Private Sub Button1_Click(ByVal sender As System.ObjectByVal e As System.EventArgs) Handles Button1.Click

        Select Case ClickCount
            Case 0
                PictureBox1.Image = Image.FromFile("C:\winnt\winnt.bmp")
            Case 1
                PictureBox1.Image = Image.FromFile("C:\WINNT\Help\iisHelp\common\cotoc.bmp")
            Case 2
                PictureBox1.Image = Image.FromFile("C:\winnt\test2.bmp")
        End Select

        ClickCount += 1

    End Sub
End Class


仕組みはシンプルですが、これだと画像の管理が面倒になります。
画像の管理方法によっては画像指定・読み込み部分のロジックは変わります。

この例では、
画像の指定→ファイル名直打ちで指定。
読み込み部分→Image.FromFile
投稿者   (社会人) 投稿日時 2009/8/25 22:02:18
http://homepage1.nifty.com/rucio/main/kiso/Kiso12ImageList.htm
こちらも参考にしてください
投稿者   (社会人) 投稿日時 2009/8/25 21:54:32
解答ではありませんが、下記のコードもクリックすると画像が切り替わります。
画像はImageListに4つ格納しています

 Dim count As Integer = -1


    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

        count = count + 1   'クリックするたびにcountが1ずつ増えていく(count + = 1と書くこともできます)

       
  If count > 3 Then count = 0  '画像は、4つしかないので3以上になったらcount=0にする

        PictureBox1.Image = ImageList1.Images(count)  'ImageList1に4つの画像を格納ずみ(インデックスは0~3)
    End Sub 
投稿者 (削除されました)  () 投稿日時 2009/8/25 21:53:03
(削除されました)
投稿者 ?-?  () 投稿日時 2009/8/25 21:35:34
> いまタイピングゲームを作っていてボタンを一回ずつ押していくと画像が切り替わるようにしたいのですが画像が切り替わらずひとつの画像しか表示されません

> どうすれば画像を切り替えることができるか教えてください。



> よろしくお願いします。 
>  


1.変数を用意できますか?
2.ボタンを押したら変数を+1することができますか?
3.変数の値によって、何か処理することが出来ますか?
(たとえば、10回押したらメッセージを表示するとか)

まずはここから♪
投稿者 るしぇ  (社会人) 投稿日時 2009/8/25 20:38:57
あー、初心者以前にプログラム自体ができないのね。
ボクはプログラムができない人にプログラムを教えようとは
思わないので、具体的なコードは書きません。

このサイトでは Top に授業のページがあって基礎知識を
自分で習得することができます。
そこで勉強してくるか、具体的なコードを質問者の代わりに
書いてくれる人もいるので待ってみるとかしてくだしあ。
投稿者 学生  (学生) 投稿日時 2009/8/25 20:26:27
初心者なのですいません。。



記述例を教えていただけませんか?
投稿者 るしぇ  (社会人) 投稿日時 2009/8/25 20:20:47
すでにすっごい具体的だと思うんだけど。。。

変数を用意します。
ボタンを押したら変数を+1します。
If で変数の値が1ならA画像2ならB画像。。。以下略
ひとつの画像を表示しているコードをコピペして画像を変えるだけでできると思いますが?
投稿者 学生  (学生) 投稿日時 2009/8/25 20:10:36
返答ありがとうございますm(_)m


具体的にどのように記述すればよろしいですか?
初心者なのでわかりやすく教えていただければうれしいです。
投稿者 るしぇ  (社会人) 投稿日時 2009/8/25 20:05:34
ボタンを押した回数を変数に覚えて、
その数字に対応した画像を表示するとか?
投稿者 学生  (学生) 投稿日時 2009/8/25 19:52:33
いまタイピングゲームを作っていてボタンを一回ずつ押していくと画像が切り替わるようにしたいのですが画像が切り替わらずひとつの画像しか表示されません

どうすれば画像を切り替えることができるか教えてください。



よろしくお願いします。