![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
и опять окна с переменной прозрачностью.. [D6, WinXP]
Альберт © (2007-02-23 23:36:00)уже появилось достачно источников с примерами форм на основе 2х изображений: 1-е - дизайн формы, 2-е - маска прозрачности. но хотелось бы иметь дело только с маской, сохраняя работоспособность дочерних элементов программы.
Посоветуйте, плз))
Альберт (2007-02-27 00:59:00) [1]но я хочу применить прозрачность для чужого окна. проблема в том, что чужая программа использует свой движок (рисование), а я хочу наложить на окно свою графику.
в принципе, как я подумал, то решением проблемы будет создание полупрозрачного окна сверху над чужим окном. таким образом 1м изображением будет то, что под формой getdc(0), а второе - маска. понятно, что можно и одним обойтись. это все условно.
причем чтобы getdc(0) не видел чужое окно , а что под ним применяю
WINDOWS.SetWindowLong(W, GWL_EXSTYLE, GetWindowLong(W, GWL_EXSTYLE) or WS_EX_LAYERED);
WINDOWS.SetLayeredWindowAttributes(W, 0, 255, LWA_ALPHA);
но нужно полностью отслеживать, что находится под чужим окном и обновлять рисуночек моего окна над чужим.
какие предложения?
Rouse_ (2007-02-26 15:29:00) [2]Есть такая чтука как 32-битный BITMAP. Он содержит как само изображение так и маску прозрачности.
(2007-02-26 14:24:00) [3]Удалено модератором
Альберт (2007-02-24 15:47:00) [4]да, задача не из легких. чтобы не мучиться с элементами управления, может быть есть какой-либо вариант для рисования (выполнения полупрозрачности) на тех областях, где компоненты окна не обновляются?