Einzelnen Beitrag anzeigen

Benutzerbild von chrisw
chrisw

Registriert seit: 11. Jan 2005
Ort: Schleswig
193 Beiträge
 
Delphi XE8 Professional
 
#1

CreatePolygonRgn und dynamisches array

  Alt 3. Mär 2008, 13:39
Hallo, folgender Code funktioniert: (es wird ein Quadrat gezeichnet)

Delphi-Quellcode:
procedure TForm1.ButtonClick(Sender: TObject);
var rgn : HRGN;
    plist : array [0..4] of TPoint;
begin
  Canvas.Brush.Color := clRed;
  plist[0] := Point(100,100);
  plist[1] := Point(100,200);
  plist[2] := Point(200,200);
  plist[3] := Point(200,100);
  plist[4] := Point(100,100);
  rgn := CreatePolygonRgn(plist,5,Winding);
  PaintRgn(Canvas.Handle,rgn);
end;
(Mal davon abgesehen, dass ich die Rgn nicht freigebe !)

Versuche ich das Ganze nun mit einem dynamischen Array, funktioniert es nicht !
Wo ist mein Denkfehler ?

Delphi-Quellcode:
procedure TForm1.ButtonClick(Sender: TObject);
var rgn : HRGN;
    plist : array of TPoint;
begin
  Canvas.Brush.Color := clRed;
  setlength(plist,5);
  plist[0] := Point(100,100);
  plist[1] := Point(100,200);
  plist[2] := Point(200,200);
  plist[3] := Point(200,100);
  plist[4] := Point(100,100);
  rgn := CreatePolygonRgn(plist,5,Winding);
  PaintRgn(Canvas.Handle,rgn);
end;
Christian Wahl
me, myself and I, die lustigen Drei !!
  Mit Zitat antworten Zitat