Показать сообщение отдельно
Старый 14.04.2010, 13:46   #5
Местный
 
Аватар для Sherman
 
Регистрация: 24.04.2008
Сообщений: 364
Сказал Спасибо: 15
Имеет 116 спасибок в 83 сообщенях
Sherman пока неопределено
По умолчанию

Цитата:
Сообщение от tgl Посмотреть сообщение
вероятно....
GetWindowLong надо звать из адресного пространства л2 иначе будет отказ в доступе (имхо)
После смены стиля бордеров надо звать SetWindowPos с флагом SWP_FRAMECHANGED (по идеии)
Собственно, протестированный код:
Код:
var
 hWnd:THandle;
 Value:integer;
 wRect:TRect;
begin
 hWnd:=FindWindow(nil,'Lineage II');
 Value:=GetWindowLong(hWnd,GWL_STYLE);
 Value:=Value xor WS_CAPTION xor WS_THICKFRAME;
 SetWindowLong(hWnd,GWL_STYLE,Value);
 GetWindowRect(hWnd,wRect);
 SetWindowPos(hWnd,HWND_TOP,
              wRect.Left,
              wRect.Top,
              wRect.Right-wRect.Left,
              wRect.Bottom-wRect.Top,
              SWP_FRAMECHANGED);
end;

Последний раз редактировалось Sherman, 14.04.2010 в 15:48.
Sherman вне форума   Ответить с цитированием