im Private-Teil einer Komponetne von TGraphicControl abgeleitet
Delphi-Quelltext
1: 2:
| procedure Line(var NCanvas: TCanvas; X1,Y1,X2,Y2: Integer); overload; procedure Line(var NCanvas: TCanvas; Pt1,Pt2: TPoint); overload; |
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17:
| procedure TwUhr.Line(var NCanvas: TCanvas; X1,Y1,X2,Y2: Integer); var oldPenPos: TPoint; begin oldPenPos := NCanvas.PenPos; NCanvas.MoveTo(X1,Y1); NCanvas.LineTo(X2,Y2); NCanvas.PenPos := oldPenPos; end;
procedure TwUhr.Line(var NCanvas: TCanvas; Pt1, Pt2: TPoint); var oldPenPos: TPoint; begin oldPenPos := NCanvas.PenPos; NCanvas.MoveTo(Pt1.x,Pt1.y); NCanvas.LineTo(Pt2.x,Pt2.y); NCanvas.PenPos := oldPenPos; end; |
Wenn ich jetzt die Funktion im Paint teil aufrufe:
Delphi-Quelltext
1:
| Line(Canvas, Middle, SekHandEnd); |
Canvas ist das Canvas der Kompo (as far as I know)
Middle ist ein TPoint;
SekHandEnd ist ein TPoint;
Delphi-Quelltext
1: 2:
| Middle := Point(Width div 2, Height div 2); StdHandEnd := GetPos4Deg(StdGrad, Middle, Radius); |
GetPos4Deg ist eine func die einen TPoint zurückliefert.
Ich bekomme aber folgenden Fehler:
| Zitat: |
| [Fehler] wUhr.pas(200): Es gibt keine überladene Version von 'Line', die man mit diesen Argumenten aufrufen kann |
->
Delphi-Quelltext
1:
| Line(Canvas, Middle, StdHandEnd); |
.: Es wird der Tag kommen, an dem wir es nicht mehr ändern können :.