Wann soll er anfangen zu malen? - Hast du richtig erkannt, im MouseDown!
Wann soll er aufhören zu malen? - Ja?
Beim Mal-Start solltest du auch den Startpunkt setzen:
Delphi-Quellcode:
procedure TForm1.ZeichenflaecheMouseDown(
Sender: TObject;
Button: TMouseButton;
Shift: TShiftState;
X, Y: Integer);
begin
draw := true;
Zeichenflaeche.Canvas.MoveTo( X, Y );
end;
Und beim Malen dann einfach nur noch eine Linie bis dort hin:
Delphi-Quellcode:
procedure TForm1.ZeichenflaecheMouseMove(
Sender: TObject;
Shift: TShiftState;
X, Y: Integer);
begin
if draw then
begin
Zeichenflaeche.Canvas.LineTo( X, Y );
end;
end;
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ea 0a 4c 14 0d b6 3a a4 c1 c5 b9
dc 90 9d f0 e9 de 13 da 60)