こんにちは。
今、ピクチャーボックスにイメージを描画させるプログラムを本をみて練習しています。この本はVisual Basic.NET 2002&2003に対応したものです。そして今、私が使っているのはVisual Basic 2005 Express Edition版です。
リストボックスとピクチャーボックス、ボタンの作成、リストボックスのリストを移動させるなどのプログラムは、大体成功しましたが、ビルドはちゃんと成功し、デバックで動作確認させる段階になると、何故か(描画させたい場所の)ピクチャーボックスにイメージにある絵が移動してくれません。自分でもどこが悪いのか良くわかりません。お分かりになられる方がいらしたら助言を宜しくお願い致します。
(描画させたい場所の)ピクチャーボックスを『PictrueBox1』、移動させたいイメージは『pctTanuki(たぬきの絵です。)』、移動させる機能ボタンは『btnDraw』です。
プログラムは以下の通りです。因みにformで変数を一度、
Public Class Form1
Dim g as Graphics
Dim pctTanuki as PictureBox1
と宣言しています。
Private Sub btnDraw_CLick(ByVaL sender As System.Objest, _
ByVaL e As System.EventArgs) HandLes btnDraw.CLick
Dim g As Graphics
g = PictureBox1.CreateGraphics()
g.DrawImage(pctTanuki.Image, 0, 0, _
PictureBox1. Width,PictureBox1.Height)
g.Dispose()
End Sub
End Class
という感じです。
このプログラムはたぬきの絵がピクチャーボックスに入ると、ピクチャーボックスにある背景を隠して、イメージのピクチャーボックスの絵がそのままバンと入ってしまうだけのプログラムだそうです。
次のプログラムはピクチャーボックスにある背景を隠さずに、イメージのピクチャーボックスの絵の周りの白い部分を透明にさせる機能をつけたプログラムです。フォームのところに『Dim btm As Bitmap』と宣言しています。以下は前述のプログラムにピクチャーボックスの背景を隠してしまわないように、たぬきの絵を入れるように少し加工させています。
Private Sub btnDraw_CLick(ByVal sender As System.Object, _
ByVal e As System.EventArgs) HandLes btnDraw.CLick
Dim g As Graphics
Dim bmp As Bitmap
g = PictureBox1.CreateGraphics()
bmp = New Bitmap(pctTanuki.Image)
bmp.MakeTransparent(CoLor.White)
g.DrawImage(bmp, 0, 0, _
PictureBox1.Width, PictureBox1.Height)
g.Dispose()
End Sub
End Class
という感じになります。
これで以上です。とても長くなりましたが、宜しくお願い致します。
桜子