ungleichmäßige Polygone

Lieber Andreas,
ich habe eine Frage zu Delphi. Ich wollte eine Funktion von Paint nachprogrammieren, nämlich die irgendwelche Formen zu zeichnen mit geraden Linien. Jedoch kann ich die Form nie schließen um eine neue Anzufangen.Hier ist mein Quellcode

unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls, StdCtrls, Buttons;

type
TForm1 = class(TForm)
Image1: TImage;
procedure Image1Click(Sender: TObject);
private
{ Private-Deklarationen }
public
{ Public-Deklarationen }
end;

var
Form1: TForm1;

implementation

{$R *.dfm}

var zaehler:integer;

procedure TForm1.Image1Click(Sender: TObject);
var Mausposition,Startposition:TPoint;
x,y,Oben,Links:integer;
begin
zaehler:=zaehler+1;
Mausposition:=ScreenToClient(Mouse.CursorPos);
x:=Mausposition.x;
y:=Mausposition.y;
Oben:=Image1.Top;
Links:=Image1.Left;
if zaehler=1 then
begin
Startposition:=Mausposition;
Image1.Canvas.MoveTo(x-Links,y-Oben);
end
else
begin
if (Mausposition.x=Startposition.x-10) and (Mausposition.y>=Startposition.y-10) then
begin
Image1.Canvas.LineTo(Startposition.x-Links,Startposition.y-Oben);
zaehler:=0;
end
else
Image1.Canvas.LineTo(x-Links,y-Oben);
end;
end;

end.

Ich hoffe du hast eine Lösung wie ich das Problem beheben kann.
Danke schon einmal im Voraus Maehks