БОЛЬШОЙ FAQ ПО DELPHI



Окно по рисунку


Разбойному нападению сотрудников фирмы "Майкрософт" подверглась штаб-квартира компании "Sun". Хулиганы вышибли в здании все двери и взамен установили окна.


 TStretchHandle = class(TCustomControl)
   private
     procedure WMEraseBkgnd(var message: TWMEraseBkgnd); message WM_ERASEBKGND;
     procedure WMGetDLGCode(var message: TMessage); message WM_GETDLGCODE;
   protected
     procedure Paint; override;
     property Canvas;
   public
     procedure CreateParams(var Params: TCreateParams); override;
 end;
 
 procedure TStretchHandle.CreateParams(var Params: TCreateParams);
 begin
   { set default Params values }
   inherited CreateParams(Params);
   { then add transparency }
   Params.ExStyle := Params.ExStyle + WS_EX_TRANSPARENT;
 end;
 
 procedure TStretchHandle.WMGetDLGCode(var message: TMessage);
 begin
   { completely fake erase, don't call inherited, don't collect $200 }
   message.Result := DLGC_WANTARROWS;
 end;
 
 procedure TStretchHandle.WMEraseBkgnd(var message: TWMEraseBkgnd);
 begin
   { completely fake erase, don't call inherited, don't collect $200 }
   message.Result := 1;
 end;
 
 procedure TStretchHandle.Paint;
 begin
   inherited Paint;
   with Canvas do
   begin
     // рисуете что нужно -
     // где не рисовали, там будет "прозрачно"
   end;
 end;
 




<< ВЕРНУТЬСЯ В ОГЛАВЛЕНИЕ



Материалы находятся на сайте https://exelab.ru/pro/



Видеокурс ВЗЛОМ