Canvas i linie

0

Witam.

  1. Jak rysujac linie na canvas'ie sprawic by byla on widziana w trakcie ruchu myszy. /jesli zrobie cos takiego:

unit Unit1;

interface

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

type
TForm1 = class(TForm)
Image1: TImage;
procedure Image1MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
procedure Image1MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
procedure Image1MouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;
s: integer;

implementation

{$R *.DFM}

procedure TForm1.Image1MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
canvas.moveto(x,y);
s:=1;

end;

procedure TForm1.Image1MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
begin

with canvas do
begin
if s=2 then canvas.lineto(x,y);
canvas.Refresh;
Canvas.Pen.Color := clblue;
Canvas.Pen.Width := (3);
canvas.Pen.Mode:=pmMergePenNot;
end;
end;

procedure TForm1.Image1MouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin

canvas.lineto(x,y);

end;

end.

to linia staje sie widoczna dopiero po uwolnieniu przycisku myszy.

0

%delphi%\Demos\Doc\Graphex

0

dzieki [hurra]

1 użytkowników online, w tym zalogowanych: 0, gości: 1