Форум программистов, компьютерный форум, киберфорум
Visual Basic .NET
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.88/8: Рейтинг темы: голосов - 8, средняя оценка - 4.88
1 / 1 / 1
Регистрация: 23.03.2017
Сообщений: 101

Как сделать полупрозрачную картинку?

15.08.2018, 23:31. Показов 1614. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Пытаюсь сделать так, чтобы картинка плавно появлялась на форме. Делаю следующее:

Visual Basic
1
2
3
4
5
6
Sub Form2_Paint(sender As Object, e As PaintEventArgs) Handles MyBase.Paint
        Dim image1 As Image = Image.FromFile("red_impala.jpg")
        Dim destRect As New Rectangle(0, 0, SystemInformation.PrimaryMonitorSize.Width, SystemInformation.PrimaryMonitorSize.Height)
        e.Graphics.DrawImage(image1, destRect)
 
End Sub
Когда вызываю Me.Refresh(), изображение появляется сразу.

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

Долго и упорно читал про AlphaBlend, но так и не понял как его применить и поможет ли он вообще.

Пожалуйста, помогите!
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
15.08.2018, 23:31
Ответы с готовыми решениями:

Как сделать полупрозрачную форму?
Как сделать в VB.net полупрозрачную форму?

Как выполнить полупрозрачную заливку?
Нужно залить пикчербокс полупрозрачной заливкой. Добавлено через 2 минуты можете не отвечать , нашёл уже.

Как сделать на форме видимой картинку во время ее перемещения мышью?
Здравствуйте. Есть код перемещения картинки (.gif) по форме. Private Sub PictureBox1_MouseMove(ByVal sender As Object, ByVal e As...

4
Лень — мое второе и
 Аватар для Orlangur
3228 / 2416 / 687
Регистрация: 28.11.2014
Сообщений: 3,601
Записей в блоге: 3
16.08.2018, 10:11
Лучший ответ Сообщение было отмечено Эникей как решение

Решение

Эникей,
VB.NET
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
 Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
        PictureBox1.Image = ChangeOpacity(Image.FromFile("C:\Users\Администратор.SERVER-RES\Desktop\sinyaya.png"), 0.3) 'значение от 0 до 1
    End Sub
    Public Shared Function ChangeOpacity(ByVal img As Image, ByVal opacityvalue As Single) As Bitmap
        Dim bmp As New Bitmap(img.Width, img.Height)
        Dim graphics__1 As Graphics = Graphics.FromImage(bmp)
        Dim colormatrix As New ColorMatrix
        colormatrix.Matrix33 = opacityvalue
        Dim imgAttribute As New ImageAttributes
        imgAttribute.SetColorMatrix(colormatrix, ColorMatrixFlag.[Default], ColorAdjustType.Bitmap)
        graphics__1.DrawImage(img, New Rectangle(0, 0, bmp.Width, bmp.Height), 0, 0, img.Width, img.Height, _
         GraphicsUnit.Pixel, imgAttribute)
        graphics__1.Dispose()
        Return bmp
    End Function
4
1 / 1 / 1
Регистрация: 23.03.2017
Сообщений: 101
16.08.2018, 12:37  [ТС]
Спасибо огромное, вчера с этой проблемой много часов копался)) Только немного подкорректирую: vb.net не знает что такое
ColorMatrix и ImageAttributes. Нужно написать:

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
Public Shared Function ChangeOpacity(ByVal img As Image, ByVal opacityvalue As Single) As Bitmap
        Dim bmp As New Bitmap(img.Width, img.Height)
        Dim graphics__1 As Graphics = Graphics.FromImage(bmp)
        Dim colormatrix As New System.Drawing.Imaging.ColorMatrix
        colormatrix.Matrix33 = opacityvalue
        Dim imgAttribute As New System.Drawing.Imaging.ImageAttributes
        imgAttribute.SetColorMatrix(colormatrix, System.Drawing.Imaging.ColorMatrixFlag.[Default], System.Drawing.Imaging.ColorAdjustType.Bitmap)
        graphics__1.DrawImage(img, New Rectangle(0, 0, bmp.Width, bmp.Height), 0, 0, img.Width, img.Height,
         GraphicsUnit.Pixel, imgAttribute)
        graphics__1.Dispose()
        Return bmp
    End Function
Функция работает отлично. Огромное спасибо. Проблема решена.
0
Лень — мое второе и
 Аватар для Orlangur
3228 / 2416 / 687
Регистрация: 28.11.2014
Сообщений: 3,601
Записей в блоге: 3
16.08.2018, 17:12
Эникей, ну, если в начале написать
VB.NET
1
Imports System.Drawing.Imaging
то знает)
1
1 / 1 / 1
Регистрация: 23.03.2017
Сообщений: 101
16.08.2018, 22:39  [ТС]
Да, или так
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
16.08.2018, 22:39
Помогаю со студенческими работами здесь

Как в Java Swing JPanel вывести полупрозрачную картинку?
Уже около месяца ищу ответ, но ответ выдавал тысячи ошибок, (как на этом...

Как сделать полупрозрачную тень по краям формы
Как реализовать ?

Как сделать полупрозрачную панельку (или другой контрол)?
Требуется на контрол цифровой карты кинуть что-то типа "легенды". Хочется сделать полупрозрачный контрол с отображением контекстной...

При наведении на полупрозрачную картинку, прозрачность увеличивается на 100%(плавно)
При наведении на полупрозрачную картинку, прозрачность увеличивается на 100%(плавно), при отведении прозрачность убиралась. Что то вроде...

Как сделать полупрозрачную форму, при том чтоб контролы на ней остались непрозрачными?
С Наступающими праздниками всех! Подскажите пожалуйста, как сделать полупрозрачную форму (opacity=0.60), при том чтоб контролы на ней...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru