powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / Как сделать прозрачное окно?
14 сообщений из 14, страница 1 из 1
Как сделать прозрачное окно?
    #32866411
Alexei_Liova
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Как сделать прозрачное окно,
чтобы на него можно было наложить непрозрачную битмапу?

WS_EX_LAYERED – не подойдет, т. к. картинка тоже становится прозрачной.

SetWindowRgn - тоже не подойдет, т. к. нельзя ей сделать окно прозрачным,
можно только обрезать окно по картинке.
...
Рейтинг: 0 / 0
Как сделать прозрачное окно?
    #32866416
Фотография Lelikk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Например:
SetLayeredWindowAttributes(hWnd, RGB(0, 0, 0), 0x0, LWA_COLORKEY)
Прозрачными будут только те части окна, которые окрашены в черный цвет
________________________________________________________
Глюк - это высокоорганизованная система не поддающихся определению частиц
...
Рейтинг: 0 / 0
Как сделать прозрачное окно?
    #32866436
Alexei_Liova
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо конечно, ну это маленько не то.
Мне как бы надо на прозрачное окно положить
полупрозрачную картинку (с Alpha – каналом),
чтобы полупрозрачные цвета тоже частично просвечивались.

А функция
SetLayeredWindowAttributes(hWnd, RGB(0, 0, 0), 0x0, LWA_COLORKEY)
Выкалывает точки определенного цвета
Обрезая окно как SetWindowRgn()
...
Рейтинг: 0 / 0
Как сделать прозрачное окно?
    #32866467
Фотография Lelikk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
То есть окно должно быть полностью прозрачнным, а картинка отчасти?
________________________________________________________
Глюк - это высокоорганизованная система не поддающихся определению частиц
...
Рейтинг: 0 / 0
Как сделать прозрачное окно?
    #32866471
Alexei_Liova
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Совершенно верно :)
...
Рейтинг: 0 / 0
Как сделать прозрачное окно?
    #32866675
Фотография Lelikk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Тогда сделайте окно в форме картинки(регионами),а потом установите полупрозрачность
________________________________________________________
Глюк - это высокоорганизованная система не поддающихся определению частиц
...
Рейтинг: 0 / 0
Как сделать прозрачное окно?
    #32866945
Siebente
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Имхо, регионами не покатит - тогда прозрачное место будет прозрачно и для мыши...

А кто-нибудь умеет делать прозрачные окна без WS_EX_LAYERED ?
...
Рейтинг: 0 / 0
Как сделать прозрачное окно?
    #32867141
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Платформа .Net каким-то образом это делает. Причем прозрачность - это всего-лишь свойство обьекта окна. А делает она .... средствами ОС. Создайте в среде VS.Net что-то оконное и понаблюдайте. Может какие-то системные вызовы увидите и т.п.
...
Рейтинг: 0 / 0
Как сделать прозрачное окно?
    #32868619
Фотография Lelikk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Платформа .NET делает окна прозрачными с помощью того же WS_EX_LAYERED.
Точно также поступает Delphi, там это тоже просто свойство окна, которое в конечном счете переправляется в SetLayeredWindowAttributes. IMHO других способов создать прозрачное окно в WIn32 не предусмотрено, потому как никому не надо.

В данном случае можно предложить решение из двух окон без системной части, при перемещении одного программно перемечать другое, которое несет картинку.
________________________________________________________
Глюк - это высокоорганизованная система не поддающихся определению частиц
...
Рейтинг: 0 / 0
Как сделать прозрачное окно?
    #32870922
Alexei_Liova
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Видел программу в которой кртинкой png реализован фон окна, и ей же
полупрозрачная тень.
Т. е. часть картинки не просвечивается, а часть просвечивается.

Попробую написать ему письмо. Может ответит?!
...
Рейтинг: 0 / 0
Как сделать прозрачное окно?
    #32871004
Alexei_Liova
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
У меня картинка в png формате то есть с Alpha каналом.

То есть мне надо наложить её на прозрачное окно.

Значит:
- окно мы не видем вообще.
- часть картинки полупрозрачна, а часть нет.
(в зависимости от установок прозрачности каждого пикселя в Alpha канале)
...
Рейтинг: 0 / 0
Как сделать прозрачное окно?
    #32884290
Фотография Serega128
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А как подобную байду реализовать в Win9x?
...
Рейтинг: 0 / 0
Как сделать прозрачное окно?
    #32884928
Siebentearbeit
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А никак...
...
Рейтинг: 0 / 0
Как сделать прозрачное окно?
    #32885332
Фотография Lelikk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Serega128А как подобную байду реализовать в Win9x?

Прозрачность -- регионами, полупрозрачность -- никак
...
Рейтинг: 0 / 0
14 сообщений из 14, страница 1 из 1
Форумы / C++ [игнор отключен] [закрыт для гостей] / Как сделать прозрачное окно?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]