|
分類:[C#]
C#でPictureBoxの画像透過について教えてください。 [コード] private void Form1_Shown(object sender, EventArgs e) { string url = Application.StartupPath + "\\LED.gif"; WebClient wc = new WebClient(); Stream stream = wc.OpenRead(url); Bitmap bitmap = new Bitmap(stream); stream.Close(); // 画像の背景を透明にする bitmap.MakeTransparent();
for (int i = 0; i < 20; i++) { PictureBox PictureBox_color = new PictureBox(); PictureBox_color.Image = bitmap; PictureBox_color.Size = new Size(90, 80); PictureBox_color.Location = new Point(15 + (i * 110), 15); PictureBox_color.BackColor = Color.White; PictureBox_color.Name = "PictureBox_color" + i.ToString(); this.Controls.Add(PictureBox_color); } }
上記コードでデバッグすると、問題なく動作するのですが、 指定した色を透過したくて bitmap.MakeTransparent(); を bitmap.MakeTransparent(Color.White); とすると、メモリが不足しています。と例外が発生してしまいます。 このメモリ不足とはどういうことなのでしょうか? また、回避方法があれば教えて下さい。 よろしくお願いいたします。
環境:VS2008+WinXP
|