Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Прозрачность компонента. [D7, WinXP]


ronyn ©   (2006-07-25 00:06:00) 

Как сделать плавное появление (прорисовку) панели (или др. компонента) и плавное исчезновение?
                      Заранее благодарен.


Степан   (2006-07-25 23:40:00) [1]

Ха, интересно. Я тоже всегда думал, что любой компонент очень легко сделать прозрачным под Win2k/XP, но оказалось, что нет... Вот тоже попытался... На форме работает, на ListView не хочет! Вот исходник, давайте подумаем!..

procedure TForm1.Button1Click(Sender: TObject);
begin
 SetWindowLong(ListView1.Handle, GWL_EXSTYLE, GetWindowLong(ListView1.Handle,
   GWL_EXSTYLE) or WS_EX_LAYERED);
 SetLayeredWindowAttributes(ListView1.Handle, 0, 128, LWA_ALPHA);
end;


@!!ex   (2006-07-25 09:52:00) [2]


SetWindowLong(hWnd, GWL_EXSTYLE, WS_EX_LAYERED);
SetLayeredWindowAttributes(hWnd, 0, 100, LWA_COLORKEY);


Хм... Форму прозрачной сделать получилось... кнопу, панельку - нет.
Видимо я ошибся.


@!!ex   (2006-07-25 09:20:00) [3]

Под XP и 2000 все той же регулировкой прозрачности окон.
Ведь практически любой визуальный компонент - окно.
Должно прокатить.


Наверх

Титульная страница Поиск, карта сайта Написать письмо