Hallo!
Im OnMouseMove des Images steht folgender Code:
Delphi-Quellcode:
var
XPos, YPos: Integer;
{...}
OnMousedown(...);
begin
Xpos := X;
YPos := Y;
end;
Jetzt möchte ich einen Kreis an die Stelle zeichnen, das geschieht allerdings durch einen Timer, dessen Interval auf 200 gesetzt ist. Damit er weiß wo die Maus gerade ist, benutzt er die X bzw. YPos:
Feld.Canvas.Ellipse(XPos-2, YPos-2, XPos+2, YPos+2); //Feld ist der Name des Images
Aber irgendwie zeichnet er die Kreise immer zu weit rechts und zu weit unten
. Der Abstand zwischen Mauszeiger und dem gezeichneten Kreis verkleinert sich, umso näher ich dem linken oberen Rand komme.
Jemand 'ne Idee