Member 9013369 Ответов: 2

Как наложить два графических окна с прозрачным фоном в приложении C# Windows


Всем Привет

Я работаю над программным обеспечением для печати, в котором мне нужно перекрыть два picturebox с прозрачным фоном для блокировки изображений.Пожалуйста, кто-нибудь подскажет мне, как этого добиться.

Спасибо

BillWoodruff

Мне нужно точно знать, что вы подразумеваете под "блокировкой", чтобы попытаться помочь вам. Является ли содержимое любого из PictureBoxes частично прозрачным ?

2 Ответов

Рейтинг:
2

Aravindba

хай
просто установите фон как транспараент
элемент управления PictureBox.Цвет Фона = Цвет.Прозрачный;

http://stackoverflow.com/questions/5522337/c-sharp-picturebox-transparent-background-doesnt-seem-to-work[^]


pictureBox7.Controls.Add(pictureBox8);
   pictureBox8.Location = new Point(0, 0);
   pictureBox8.BackColor = Color.Transparent;



http://stackoverflow.com/questions/19910172/how-to-make-picturebox-transparent-in-c-net[^]
попробовать это


Member 9013369

это правильно, но не работает для меня, потому что я использовал
Элемент управления PictureBox ПБ=новый элемент управления PictureBox ();
оба изображения создаются в pb;
в разных местах;

Aravindba

вы добавили обе картинки в одну коробку с картинками в разных местах ? поле изображения только прозрачное, и вы можете видеть фон формы. изображение не может быть прозрачным.

Рейтинг:
1

Member 11959505

Попробуйте нарисовать всю детскую картинку к родительской картинке!!

void ParentPictureBox_Paint(object sender, PaintEventArgs e)
{
    Graphics g = e.Graphics;

    var controls = this.ParentPictureBox.Controls.OfType<PictureBox>();
    foreach (var c in controls)
    {
        g.DrawImage(c.Image, c.Location.X, c.Location.Y, c.Width, c.Height);
    }
}


Это результат!
ТМП — imgbb.com[^]