Wie kann ich einem Fenster eine andere Form geben (z.B. einen Kreis)?


Dafür gibt es die sogenannten "Regions":

procedure TForm1.FormCreate(Sender:TObject);
var HR: HRgn;
      n:array[0..3] of TPoint;
begin
  n[0] := Point(Width div 2,1);
  n[1] := Point(1, Height div 2);
  n[2] := Point(Width div 2,Height);
  n[3] := Point(Width, Height div 2);

  HR:= CreateEllipticRgn (0, 0, Width, Height);

  SetWindowRgn(Handle, HR, True);
end;

Bsp. aus dem Buch "Borland Delphi 3 für Profis" von Walter Doberenz und Thomans Kowalski aus dem Hanser Verlag.

Delphi 1 Delphi 2 Delphi 3 Delphi 4
nicht getestet Version nicht betroffen getestet


siehe auch:


Delphi FAQ