Verzeiht mir diese Frage, aber ich bekomm es gerade nich hin, die Funktion DrawPolygon(const Pen *pen, const Point *points, INT *count) zu benutzen. Mein Problem liegt darin, dass ich nich weiß, wie ich bei
GDI+ ein Array of PGPPoint anlegen kann.
Wenn ich es einfach mal mit Points: Array[0..3] of PGPPoint versuche, kann ich zwar über Points[0].X Werte zuweisen, aber sobald ich dann die DrawPolygon mit Points aufrufen möchte, schmeißt er mir folgende Fehlermeldung:
[Pascal Error] Main.pas(6513): E2250 There is no overloaded version of 'DrawPolygon' that can be called with these arguments
Code sieht folgendermaßen aus:
Delphi-Quellcode:
procedure TMainForm.Draw;
const
ALPHA = 100;
var
Graphics: TGPGraphics;
GdiPen: TGPPen;
points: Array[0..3] of PGPPoint;
PenR, PenG, PenB: Integer;
begin
PenR := GetRValue(clGray);
PenG := GetGValue(clGray);
PenB := GetBValue(clGray);
Graphics := TGPGraphics.Create(TChart(Sender).Canvas.Handle);
GdiPen := TGPPen.Create(MakeColor(Alpha, penR, PenG, PenB));
points[0].X := xBegin;
points[0].Y := y;
points[1].X := xEnd;
points[1].Y := y;
points[2].X := xEnd+xDelay;
points[2].Y := y-yDelay;
points[3].X := xBegin+xDelay;
points[3].Y := y-yDelay;
Graphics.DrawPolygon(GdiPen, points, 4);
end;
Wäre toll, wenn mir mal schnell jemand auf die Sprünge helfen könnte!
Dankeschööönnn,
liebe Grüße Laura