1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
| procedure TForm1.MouseDown(Button: TMouseButton; Shift:TShiftState; X, Y:Integer);
begin
P0.X:= X; {Initialise les points du rectangle}
P0.Y:= Y;
P1.X:= X;
P1.Y:= Y;
Canvas.Pen.Color:= clBlack;
Canvas.Pen.Style:= psDot; {Pointillés}
Canvas.Pen.Mode:= pmNotXor; {Traçage en mode XOR}
Canvas.Rectangle(P0.X, P0.Y, P1.X, P1.Y); {Traçage initial}
end;
procedure TForm1.MouseMove(Shift: TShiftState; X, Y: Integer);
begin
Canvas.Rectangle(P0.X, P0.Y, P1.X, P1.Y); {Efface le Rect précédent}
Canvas.Rectangle(P0.X, P0.Y, X, Y); {Trace le nouveau}
P1.X:= X;
P1.Y:= Y
end;
procedure TForm1.MouseUp(Button: TMouseButton; Shift:TShiftState; X, Y:Integer);
begin
Canvas.Rectangle(P0.X, P0.Y, P1.X, P1.Y); {Effaçage du rectangle}
Canvas.Pen.Style:= psSolid; {Retour au mode de traçage ligne complète}
Canvas.Pen.Mode:= pmCopy; {Retour au mode normal de traçage}
end; |
Partager