C++ Builder
| Главная | Уроки | Статьи | FAQ | Форум | Downloads | Литература | Ссылки | RXLib | Диски |

 
Прозрачность ?
** isl
Отправлено: 26.12.2003, 20:31


Не зарегистрирован







[FONT=Times]Как сделать прозрачным компонент на форме (например TPanel) ?
tsl
Отправлено: 27.12.2003, 00:58


Дежурный стрелочник

Группа: Участник
Сообщений: 65



У некоторых компонентов имеется свойство Transparent. Если его определить как true, то компонент будет прозрачен. Но конкретно TPanel не имеет такого свойства. Поэтому, как я понимаю, TPanel, зделать прозрачным невозможно таким способом.

Если есть другой, я бы хотел узнать. Недавно задавал вопрос, в котором в ходе обсуждения возникла проблема прозрачности TPanel.
Daan
Отправлено: 27.12.2003, 08:42


Дежурный стрелочник

Группа: Участник
Сообщений: 62



Я "слышал" о прозрачности формы. На сколько я знаю, форма — это то же, что и окна, а панель окно... так нельзя ли использавать это. Мож я и ошибаюсь.
maikl
Отправлено: 27.12.2003, 09:11


Станционный диспетчер

Группа: Участник
Сообщений: 135



Этот код делает форму всю полностью прозрачной, должен быть способ сделать ее прозрачной не полностью, а в определенных границах, например в тех куда попадает Panel.
[CODE]
int Transparency = 90;
LONG ExtStyle = GetWindowLong(Handle, GWL_EXSTYLE);

SetWindowLong(Handle, GWL_EXSTYLE, ExtStyle | WS_EX_LAYERED);
SetLayeredWindowAttributes(Handle, 0, (255 * Transparency) / 100, LWA_ALPHA);
[\CODE]

Во всяком случаи я такого способа не нашел. sad.gif

Вернуться в Вопросы программирования в C++Builder