頂我想pbGrade
是在pbItemtype
(PB =圖片框)的頂部C#圖片框上的另一個圖片框
pbItemtype.BackColor = Color.Transparent;
// Change parent for overlay PictureBox...
pbItemtype.Parent = pbGrade;
我已經嘗試過這一點,但隨後pbItemtype甚至不出現,也是2圖片框改變圖像(pbItemtype和pbGrade)
頂我想pbGrade
是在pbItemtype
(PB =圖片框)的頂部C#圖片框上的另一個圖片框
pbItemtype.BackColor = Color.Transparent;
// Change parent for overlay PictureBox...
pbItemtype.Parent = pbGrade;
我已經嘗試過這一點,但隨後pbItemtype甚至不出現,也是2圖片框改變圖像(pbItemtype和pbGrade)
那麼實際上你可以做到這一點很容易和事實。
代碼工作但您還需要更正Location
爲嵌套的PB將保持前一個,因此將可能是關閉的右下角,可能留下新Parent
的可見大小.... :
pbItemtype.BackColor = Color.Transparent;
// Change parent for overlay PictureBox...
pbItemtype.Parent = pbGrade;
// Move it to the top left of the parent:
pbItemtype.Location = Point.Empty; // or some other position..
透明效果很好,當築巢控制。它不起作用重疊他們,但!
(當然,我們看到的代碼將不交換圖像!)
工作很好,不得不與PB命令玩一下,但是:P –
最好的方法是用離線在Bitmap對象疊加來構造圖像,則該圖像構造分配給圖片框進行顯示。
例如是這樣的:
int width = 100;
int height = 100;
Image image = new Bitmap(width, height);
using (var graphics = Graphics.FromImage(image))
{
graphics.DrawImage(MyApplication.Properties.Resources.ImageItemX, new Rectangle(0, 0, width, height));
graphics.DrawImage(MyApplication.Properties.Resources.ImageGradeZ, new Rectangle(0, 0, width, height));
}
myPictureBox.SizeMode = PictureBoxSizeMode.Zoom;
myPictureBox.Image = image;
這假定ImageItemX
和ImageGradeZ
是導入爲下這些名字項目資源具有透明背景(例如PNG圖像)的圖像。
例如考慮到這些資源
的代碼會產生這樣的:你已經做了
事實上,OP要求通過PBox查看下面的一個,沒有什麼更多。沒問題,只要沒有控制__overlap__ .. - 仍然:在飛行中繪製的東西也是並且往往是一個不錯的選擇.. – TaW
是啊真正的TaW我想要的是認爲其他圖片盒到另一個圖片盒 –
你不能輕鬆做到這一點。 – SLaks
我很瞭解:P –