14.05.2008, 21:28
общий
это ответ
<i>Здравствуйте, <b>Олег Семёнович</b>!</i>
Для установки прозрачности формы, Delphi использует функцию SetLayeredWindowAttributes. Данная функция работает только с окнами, у которых применен расширенный стиль WS_EX_LAYERED. Данный стиль можно указать либо при создании окна (CreateWindowEx), либо с помощью функции SetWindowLong.
В описании данного стиля есть строчка:
<cite>
Windows 2000/XP</b>: Note that this <u>cannot be used for child windows</u>.
</cite>
Переводится это так:
"Учтите, данный стиль <b>не может применяться для дочерних окон</b>".
При вызове функции SetLayeredWindowAttributes для дочерних окон возникает ошибка 87 (Параметр задан неверно).
Т.е., к сожалению, прозрачность дочерних окон устанавливать нельзя.
<em>Удачи!</em>