0 / 0 / 0
Регистрация: 04.11.2007
Сообщений: 5

Как в PictureBox вывести картинку с прозрачным фоном?

04.11.2007, 13:27. Показов 2544. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Есть картинка в файле ресурса, необходимо отобразить ее в PictureBox таким образом, чтобы определенный цвет (в моем примере vbMagenta) был прозрачным. Как это можно сделать?
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
04.11.2007, 13:27
Ответы с готовыми решениями:

Создать свой курсор с прозрачным фоном
Здравствуйте форумчане. Мне надо сделать курсор с прозрачным фоном. Я знаю, что мене скажут, что VB не работает с альфа-каналом, но я...

Сделать часть PictureBox прозрачным
Имеется форма с имеджом, вид ее показан ниже вопрос такой: как сделать так чтобы у имеджа всё белое стало прозрачным? Спасибо за отклик

Как загрузить картинку в PictureBox
Пыталась добавить на форму PictureBox1, а затем в properties импортировать изображение... но ничего не вышло. так нельзя. Подскажите кто...

1
easy
05.11.2007, 12:54
Как нарисовать прозрачную картинку Top

Option Explicit

Public Declare Function BitBlt Lib 'gdi32' (ByVal hDestDC As Long, ByVal x As Long, ByVal y As Long, ByVal nWidth As Long, ByVal nHeight As Long, ByVal hSrcDC As Long, ByVal xSrc As Long, ByVal ySrc As Long, ByVal dwRop As Long) As Long
Public Declare Function SetBkColor Lib 'gdi32' (ByVal hdc As Long, ByVal crColor As Long) As Long
Public Declare Function CreateCompatibleDC Lib 'gdi32' (ByVal hdc As Long) As Long
Public Declare Function DeleteDC Lib 'gdi32' (ByVal hdc As Long) As Long
Public Declare Function CreateCompatibleBitmap Lib 'gdi32' (ByVal hdc As Long, ByVal nWidth As Long, ByVal nHeight As Long) As Long
Public Declare Function SelectObject Lib 'gdi32' (ByVal hdc As Long, ByVal hObject As Long) As Long
Public Declare Function DeleteObject Lib 'gdi32' (ByVal hObject As Long) As Long
Public Declare Function GetDC Lib 'user32' (ByVal hwnd As Long) As Long
Public Declare Function GetBkColor Lib 'gdi32' (ByVal hdc As Long) As Long
Public Declare Function GetTextColor Lib 'gdi32' (ByVal hdc As Long) As Long
Public Declare Function SetTextColor Lib 'gdi32' (ByVal hdc As Long, ByVal crColor As Long) As Long
Public Declare Function CreateBitmap Lib 'gdi32' (ByVal nWidth As Long, ByVal nHeight As Long, ByVal nPlanes As Long, ByVal nBitCount As Long, lpBits As Any) As Long
Public Declare Function SelectPalette Lib 'gdi32' (ByVal hdc As Long, ByVal hPalette As Long, ByVal bForceBackground As Long) As Long
Public Declare Function RealizePalette Lib 'gdi32' (ByVal hdc As Long) As Long
Public Declare Function ReleaseDC Lib 'user32' (ByVal hwnd As Long, ByVal hdc As Long) As Long
Public Declare Function CreateHalftonePalette Lib 'gdi32' (ByVal hdc As Long) As Long
Public Declare Function OleTranslateColor Lib 'oleaut32.dll' (ByVal lOleColor As Long, ByVal lHPalette As Long, lColorRef As Long) As Long

'Raster Operation Codes
Public Const DSna = &H220326 '0x00220326

Public Sub PaintTransparentDC(ByVal hdcDest As Long, _
ByVal xDest As Long, _
ByVal yDest As Long, _
ByVal Width As Long, _
ByVal Height As Long, _
ByVal hdcSrc As Long, _
ByVal xSrc As Long, _
ByVal ySrc As Long, _
ByVal clrMask As OLE_COLOR, _
Optional ByVal hPal As Long = 0)
Dim hdcMask As Long 'HDC для изображения маски
Dim hdcColor As Long 'HDC для цветного изображения
Dim hbmMask As Long 'Дескриптор маски
Dim hbmColor As Long 'Дескриптор цветного изображения
Dim hbmColorOld As Long
Dim hbmMaskOld As Long
Dim hPalOld As Long
Dim hdcScreen As Long
Dim hdcScnBuffer As Long 'Основной буфер
Dim hbmScnBuffer As Long
Dim hbmScnBufferOld As Long
Dim hPalBufferOld As Long
Dim lMaskColor As Long

Dim m_hpalHalftone As Long 'Halftone-палитра, используется по умолчанию

hdcScreen = GetDC(0&)
m_hpalHalftone = CreateHalftonePalette(hdcScreen)
'Проверяем палитру
If hPal = 0 Then
hPal = m_hpalHalftone
End If
OleTranslateColor clrMask, hPal, lMaskColor

'Создаем в памяти цветную битмапу и копируем в нее содержимое Destination
'Все операции будут производится име
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
05.11.2007, 12:54
Помогаю со студенческими работами здесь

Как в PictureBox загрузить картинку
нужна помощь : Я ПользоватеЬ запускаю "эту" программу и ... 1)в picturebox вставить картинку из любого места на диске 2) На...

Как вставить в PictureBox картинку из базы?
И как вставить? Например картинку,сохраненную в SQL Server в поле типа Image или в MS Access в поле OLE Object? Или я не те поля выбрал для...

Как в PictureBox загрузить и показать анимированую картинку?
Подскажите пожалуста как в PictureBox загрузить и показать анимированую картинку из 1.gif

Как открыть картинку PNG и засунуть в PictureBox?
Мир Вам! Как открыть картинку PNG и засунуть в PictureBox? При обычном LoadPicture возникает ошибка ИнвалидИмаге. Помогите, может кто...

PictureBox под PicturePox с прозрачным фоном
Доброго времени суток, мастера командных строк и скриптов. Столкнулся с проблемой в Вижуал студио: сделал картинку в фотошопе с прозрачным...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

Новые блоги и статьи
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru