Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.02.06;
Скачать: CL | DM;

Вниз

Как убрать прозрачность окна?   Найти похожие ветки 

 
Вадим ©   (2003-12-02 05:10) [0]

Устанавливаю прозрачность окна так:

AStyle := GetWindowLong(hWnd, GWL_EXSTYLE);
SetWindowLong(hWnd, GWL_EXSTYLE, AStyle or WS_EX_LAYERED);
SetLayeredWindowAttributes(hWnd, $FFFFFF, Value, LWA_ALPHA);


а как ее снять?


 
Нурик ©   (2003-12-02 06:49) [1]

Просто вместо Value нужно подставить значение 255, и всё!

//Для установки прозрачности
procedure TForm1.Button1Click(Sender: TObject);
var
AStyle: longint;
h: hwnd;
begin
h:=Application.MainForm.Handle;
AStyle:=GetWindowLong(h,GWL_EXSTYLE);
SetWindowLong(h, GWL_EXSTYLE, AStyle or WS_EX_LAYERED);
SetLayeredWindowAttributes(h, $FFFFFF, 100, LWA_ALPHA);
end;

//Для снятия прозрачности
procedure TForm1.Button2Click(Sender: TObject);
var
AStyle: longint;
h: hwnd;
begin
h:=Application.MainForm.Handle;
AStyle:=GetWindowLong(h,GWL_EXSTYLE);
SetWindowLong(h, GWL_EXSTYLE, AStyle or WS_EX_LAYERED);
SetLayeredWindowAttributes(h, $FFFFFF, 255, LWA_ALPHA);
end;


 
MBo ©   (2003-12-02 06:56) [2]

Так попробуй
SetWindowLong(hWnd, GWL_EXSTYLE, AStyle and (not WS_EX_LAYERED));


 
Вадим ©   (2003-12-03 08:47) [3]


> MBo © (02.12.03 06:56) [2]
> Так попробуй
> SetWindowLong(hWnd, GWL_EXSTYLE, AStyle and (not WS_EX_LAYERED));


Окно все равно медленно перерисовывается при изменении размера. Как же быть?



Страницы: 1 вся ветка

Текущий архив: 2004.02.06;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.022 c
3-16093
kor@lex
2004-01-11 10:56
2004.02.06
DbMemo


1-16311
Lisa
2004-01-25 16:44
2004.02.06
TDBNavigator


14-16651
RealRascal
2004-01-13 23:07
2004.02.06
Привлечение внимания к окну, когда активно другое приложение


1-16465
Натуся
2004-01-27 23:08
2004.02.06
Округление double


14-16695
Radionov Alexey
2004-01-16 12:09
2004.02.06
Информатику в массы!