2017-12-14 37 views
0

Windowsフォームで透明度の順序を理解するのに少し助けが必要です。私はテストと呼ばれることのない単純なフォームを作成しました。フォームの構造内パネルとピクチャボックスの透明度を指定する注文

は、Iパネルなどのような画像作成:まず

public partial class test : Form 
{ 
    public test() 
    { 
     InitializeComponent(); 
     //create a panel 
     Panel panel = new Panel(); 
     panel.Location = new Point(10, 10); 
     panel.Size = new Size(100, 100); 
     panel.BackColor = Color.FromArgb(255, 0, 0); 
     panel.Show(); 
     //put panel on screen 
     this.Controls.Add(panel); 

     //create a picture box 
     PictureBox picture = new PictureBox(); 
     picture.ImageLocation = "../myPicture2.png"; 

     picture.Location = new Point(20, 20); 
     picture.Size = new Size(100, 100); 
     picture.BackColor = Color.Transparent; 
     picture.Show(); 
     this.Controls.Add(picture); 

     picture.BringToFront(); 


    } 
} 

を私が使用される画像は、私はこの結果を与える白い背景画像myPicture1.pngました。

enter image description here

しかし、私はそれ透明な背景にするGIMPで白い背景をトリミング。

enter image description here

しかし、今、フォームの背景ではなく、パネルのアップ表示されます。

enter image description here

私は画像の後ろのパネルの背景色を維持しようとしているパネルの上に、このピクチャを入れています。このよう

enter image description here

誰かがピクチャで透明なイメージの後ろのパネルの背景を持つの望ましい結果をacheiveする方法を私に説明していただけますか?すべてのアドバイスはいつものように大きく評価されています!

+1

この問題は、ピクチャボックスがパネル内にあるのではなくフォーム上にあるために発生しますか? – crimson589

+0

ああ、それは私が間違っていたものです。おかげでクリムゾン、私は今、本当にばかげて感じる:S。あなたが私を助けて以来、私は選択することができます答えを入れたい場合:) – Jamin

答えて

1

この問題は、ピクチャボックスがパネル内にあるのではなくフォーム上にあるために発生しますか?

panel.Controls.Add(picture); 
関連する問題