Рассмотрите возможность использования класса Bitmap
, чтобы открыть файлы с изображениями.
Dim myImage as new Bitmap("C:\Image file.bmp")
И тогда вы можете использовать MakeTransparent() или MakeTransparent(Color) методы:
Получить цвет пикселя фона.
Dim backColor As Color = myImage.GetPixel(1, 1)
Сделайте обратный цвет прозрачным для myBitmap.
myImage.MakeTransparent(backColor)
EDIT:
Как я понимаю из новых деталей, которые вы хотите иметь PictureBox
быть прозрачным, где исходное изображение является прозрачным. К сожалению, это невозможно, используя WinForms
, потому что система прозрачности не каскадирует. Вы можете установить свойство pictureBox BackgroundColor
прозрачным, но это будет действовать иначе, чем вы думаете. Свободные пиксели элемента управления PictureBox будут отображать содержимое родительского элемента .
Это означает, что если у вас есть, например, ярлык под вашим picurebox и установите прозрачный фон для изображения; метка не будет отображаться, потому что это не прозрачный элемент управления изображением.
Обходным способом является рисование изображения вручную в событии paint
управления назначения.
Предположим, что у вас есть форма с большим количеством элементов управления, и вы хотите нарисовать изображение объявления над кнопкой (с именем btn). Вы должны переопределить краски событий формы таким образом:
Private Sub form_Paint(ByVal sender As Object, ByVal e As System.Windows.Forms.PaintEventArgs) Handles form.Paint
Dim g As Graphics = e.Graphics
g.DrawImage(Image.FromFile("C:/yourimage.png", btn.Location.X, btn.Location.Y)
End Sub
Пожалуйста, удалите MySQL тег ... – theBugger
@theBugger К сожалению моя ошибка не ставил код MySQL, но я редактировал его в настоящее время. – TKGhoul