Как сделать полупрозрачное окно?
Автор: OlegGG
Исходная ссылка: - - -
В 9x эта штука не предусмотрена. Там это можно сделать "ручками", но при этом программа будет "жрать" очень много ресурсов. Но в линейке NT, начиная с 2000, это можно сделать.
Пример (окно будет плавно проявляться):
SetWindowLong(Handle, GWL_EXSTYLE, GetWindowLong(Handle, GWL_EXSTYLE) | WS_EX_LAYERED);
for (int x = 0;x<255;x+=5)
{
SetLayeredWindowAttributes(Handle, 0, x, LWA_ALPHA);
Application->ProcessMessages();
Sleep(1);
}
SetLayeredWindowAttributes(Handle, 0, 255, LWA_ALPHA);
Начиная с C++Builder 6, в свойствах формы появились AlphaBlend и AlphaBlendValue.
Здесь всё проще: ставим AlphaBlend в true, а потом балуемся со значением AlphaBlendValue.
|