- PR -

[C#] PictureBoxに画像を表示

1
投稿者投稿内容
カラス
会議室デビュー日: 2006/06/01
投稿数: 2
投稿日時: 2006-06-01 11:50
はじめまして。
簡単なスロットシミュレーションを作成しているのですが。
スロットのリールを回したいのですが、うまくいきません。
リールの画像は実際のもののように縦長の画像を用意しています。
1つのPictureBoxに3つの画像を回しながら表示、合計3つのPictureBoxを使って当たり判定をしたいのです。
説明不足な点、あるかと思いますが、何卒宜しくお願いいたします。
深山
ベテラン
会議室デビュー日: 2006/05/09
投稿数: 66
お住まい・勤務地: 都内某所
投稿日時: 2006-06-01 17:06
はじめまして、深山です。

リールを回したいだけでしたら、timerとPicurtreBoxのPaintイベントを使えば出来ませんか?

かなり適当なコードですが、下記のコードでどうでしょう?

コード:
	private void timer1_Tick(object sender, System.EventArgs e)
	{
		// 描画位置をずらす
		y -= 1;

		// ピクチャーボックスの再描画
		this.pictureBox1.Invalidate();
	}

	private void pictureBox1_Paint(object sender, System.Windows.Forms.PaintEventArgs e)
	{	
		using(Graphics g = Graphics.FromImage(pictureBox1.Image))
		{
			g.DrawImage(img1, 0, y);
			g.DrawImage(img2, img1.Width, y);
			g.DrawImage(img3, img1.Width + img2.Width, y);
		}
	}



イメージの終わりまできたら、最初に戻る処理を入れてはいないので自分で追加してください。

あたり判定については、リールの画像毎に絵柄の範囲を保持しておけば、
yの値を使えば出来ると思います。
カラス
会議室デビュー日: 2006/06/01
投稿数: 2
投稿日時: 2006-06-01 17:18
深山さま、返答ありがとうございました。
イメージがつかめたと思いますので、早速試してみます。
1

スキルアップ/キャリアアップ(JOB@IT)