![]() |
|
Модераторы: feodorv, GremlinProg, xvr, Fixin |
![]()
|
|
| Singular |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 8 Регистрация: 2.9.2010 Репутация: нет Всего: нет |
Доброго времени суток.
Проблема на деле не такая абсурдная, как название темы. С помощью bitblt делается "снимок" HWND_DESKTOP и сохраняется в текстуру для последующего использования в OpenGL. Естественно, на "снимок" попадает и само окно моей программы, что мне не нужно. А если даже на мгновение сместить его и сделать невидимым перед использованием bitblt - получается заметное мерцание(скорее даже кошмар эпилептика, который видно за милю). Вопрос знатокам: Интересует, возможно-ли сделать смещение\отключение окна не заметным для глаз пользователя? Может быть, в winapi есть лазейка? Это сообщение отредактировал(а) Singular - 26.1.2011, 15:29 |
|||
|
||||
| borisbn |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 4875 Регистрация: 6.2.2010 Где: Ростов-на-Дону Репутация: 6 Всего: 135 |
В записывалке видео с десктопа Camtasia они вышли из этой ситуации след.образом: их программа висела в трее и старт и стоп записи вызывался по глобальным горячим клавишам.
Есть ещё вариант: специально замедлить исчезновение программы, по таймеру уменьшая прозрачность окна до, скажем, 10%, а затем уже делать hide. Появляться, наверное, лучше также. за "кошмар эпилептика" +100 -------------------- Женщины отличаются от программистов тем, что у них чары состоят из стрингов |
|||
|
||||
| Singular |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 8 Регистрация: 2.9.2010 Репутация: нет Всего: нет |
Роюсь в мсдн и теряю надежду. Ибо мне надо, чтобы окно моей программы было при этом активным. А вся эта затея ради полноценной прозрачности, ибо не хочу давиться подачками winapi типа ColorKey, а хочу полноценную(с альфа-каналом) прозрачность окна OpenGL. В общем, зашел в тупик на пол пути.
|
|||
|
||||
| Dem_max |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1780 Регистрация: 12.4.2007 Репутация: 16 Всего: 39 |
так в чем проблема ? UpdateLayeredWindow() и вперед -------------------- Американские программисты долго не могли понять, почему русские при зависании Windоws всё время повторяют "Твой зайка написал" ("Yоur bunnу wrоte") |
|||
|
||||
| Singular |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 8 Регистрация: 2.9.2010 Репутация: нет Всего: нет |
http://www.google.ru/images?hl=ru&xhr=...280&bih=821 Вот примеры альфа-канала, про который говорю я. А в Layered Window один ключевой цвет прозрачности(и, насколько я понял, этот тип окон пашет только на висте и семерке). |
|||
|
||||
| Dem_max |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1780 Регистрация: 12.4.2007 Репутация: 16 Всего: 39 |
UpdateLayeredWindow() работает с 2000 винды. ну и не мешало бы прочитать тут http://msdn.microsoft.com/en-us/library/ms997507.aspx Вот тебе для примера прожки с Layered Window Это сообщение отредактировал(а) Dem_max - 27.1.2011, 05:40 Присоединённый файл ( Кол-во скачиваний: 4 )
OSD_Editor.zip 439,14 Kb-------------------- Американские программисты долго не могли понять, почему русские при зависании Windоws всё время повторяют "Твой зайка написал" ("Yоur bunnу wrоte") |
|||
|
||||
| borisbn |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 4875 Регистрация: 6.2.2010 Где: Ростов-на-Дону Репутация: 6 Всего: 135 |
Singular, посмотри статью из MSDN, которую тебе посоветовал Dem_max, там в самом конце пример fade (не знаю как перевести) окна - именно то, что тебе нужно.
И ещё идейка. Бесплатная, т.к. взята у Apple на MacBook После (или во время) делания screen-shoot'а воспроизвести звук фото-затвора (как на телефонах с камерой делают), а потом на 100-200 мс залить весь экран белым и вернуть его в начальное состояние - эдакий эффект вспышки. Оч. красиво смотрится. Итого: если сделать такой алгоритм
то IMHO будет очень даже прелестно -------------------- Женщины отличаются от программистов тем, что у них чары состоят из стрингов |
|||
|
||||
| Dem_max |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1780 Регистрация: 12.4.2007 Репутация: 16 Всего: 39 |
да и еще вот свежая темка http://forum.sources.ru/index.php?showtopic=323384
спроси у автора у него готовый код уже есть, я думаю что он поделится. -------------------- Американские программисты долго не могли понять, почему русские при зависании Windоws всё время повторяют "Твой зайка написал" ("Yоur bunnу wrоte") |
|||
|
||||
![]()
|
| Правила форума "C/C++: Системное программирование и WinAPI" | |
|
|
На данный раздел распространяются Правила форума и Правила раздела С++:Общие вопросы . Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Chipset, Step, Fixin, GremlinProg, xvr. feodorv. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Системное программирование и WinAPI | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |