Transparency

Модераторы: Hawk, Romeo, Absurd, DeeJayC, WinMain

Ответить
XANTER
Сообщения: 5
Зарегистрирован: 09 июл 2004, 19:11
Откуда: г.Одесса, Украина

Привет!!
Кто знает как задавать прозрачность диалогового окна?
Кто что может посоветовать.....
Заранее спасибо! :)
Аватара пользователя
Romeo
Сообщения: 3126
Зарегистрирован: 02 мар 2004, 17:25
Откуда: Крым, Севастополь
Контактная информация:

Встречал исходник, в котором создавался диалог произвольной формы, даже с "дырками". Но только это было так давно, что я ещё не имел обыкновения записыть интересные API-шные функции в специальный файлик, под названием Note.txt :) Может кто-либо из более старших господ кураторов вспомнит о чём идёт речь и поможет XANTER'у?
Entites should not be multiplied beyond necessity @ William Occam
---
Для выделения С++ кода используйте конструкцию [ code=cpp ] Код [ /code ] (без пробелов)
---
Сообщение "Спасибо" малоинформативно. Благодарность правильнее высказать, воспользовавшись кнопкой "Reputation" в виде звёздочки, расположенной в левом нижнем углу рамки сообщения.
Absurd
Сообщения: 1228
Зарегистрирован: 26 фев 2004, 13:24
Откуда: Pietari, Venäjä
Контактная информация:

Встречал исходник, в который позволяет создавать диалоги произвольной формы формы, в том числе и с "дырками"
RTFM SetWindowRgn(). Регион нужной формы можно сформировать из горизонтальных (или вертикальных) полосочек однопикселной толщины.
2B OR NOT(2B) = FF
Аватара пользователя
Romeo
Сообщения: 3126
Зарегистрирован: 02 мар 2004, 17:25
Откуда: Крым, Севастополь
Контактная информация:

Верно, это именно та API!
Entites should not be multiplied beyond necessity @ William Occam
---
Для выделения С++ кода используйте конструкцию [ code=cpp ] Код [ /code ] (без пробелов)
---
Сообщение "Спасибо" малоинформативно. Благодарность правильнее высказать, воспользовавшись кнопкой "Reputation" в виде звёздочки, расположенной в левом нижнем углу рамки сообщения.
DeeJayC
Сообщения: 497
Зарегистрирован: 17 фев 2004, 11:26
Откуда: Ленинград (который Город на Неве)
Контактная информация:

Romeo писал(а):Встречал исходник, в котором создавался диалог произвольной формы, даже с "дырками".
Есть такое дело.

SetWindowRegion (что-то в этом духе). Но есть ещё и свойство диалога-
в ресурсах можно отметить. В этом случае имеем прозрачное нерисующееся окно. А есть ещё вариант - с версии Win2K/WinXP в
OnCreate можно указать, что окно "Прозрачное" - имеет Alpha - составляющую цвета. Так что чего надо?
"Особое внимание начинающих аквариумистов хотим обратить на то, что рыбки никогда не спят на спинке!" (c)

viel spass, DeeJayC
XANTER
Сообщения: 5
Зарегистрирован: 09 июл 2004, 19:11
Откуда: г.Одесса, Украина

А есть ещё вариант - с версии Win2K/WinXP в
OnCreate можно указать, что окно "Прозрачное" - имеет Alpha - составляющую цвета.
Как это сделать?........
Аватара пользователя
Romeo
Сообщения: 3126
Зарегистрирован: 02 мар 2004, 17:25
Откуда: Крым, Севастополь
Контактная информация:

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

1. Это просто плохой стиль программирования.
2. Придётся SDK соответствующий искать, а это тоже парит.
3. На других платформах работать не будет - это огромный минус

Бери SetWindowRgn() - и вперёд
Entites should not be multiplied beyond necessity @ William Occam
---
Для выделения С++ кода используйте конструкцию [ code=cpp ] Код [ /code ] (без пробелов)
---
Сообщение "Спасибо" малоинформативно. Благодарность правильнее высказать, воспользовавшись кнопкой "Reputation" в виде звёздочки, расположенной в левом нижнем углу рамки сообщения.
Ответить