Здравствуйте, уважаемые профессионалы!
Проблемка возникла, UpdateLayeredWindow применима только для не Child окон.
А ведь она предоставляет замечательную возможность сделать окно прозрачным, при чем прозрачность эта может быть заимствована из изображения с альфа-каналом...
Хотелось бы такую же фишку и для Child окон применять, поэтому я решил реализовать самодельную функцию.
Ну и собственно зачем мне принцип работы UpdateLayeredWindow, думаю уже догадались, чтобы соорудить инструмент работающий по такому же принципу, но применяемый для любого вида окон.
Будут интересны любые мысли по поводу реализации "не грубой" прозрачности.
Заранее спасибо!
------------------------------------------------------------------
На данный момент я использую следующий алгоритм:
>Устанавливаю для контрола стиль WS_EX_TRANSPARENT.
>В событии Paint контрола вызываю Refresh всех компонентов находящихся в родителе контрола, ну и для самого родителя.
>Далее функцией BitBlt копирую картинку через hDC родителя в hDC контрола.
>Ну и наконец сверху "кладу" еще какое-нибудь изображение с прозрачностью.
[Viper] :: Для начала просто переезжаем в соответствующий раздел.