Kako z miško pisat?

Vse o grafiki, canvasu, directdraw, itd.
Fortuna
Prispevkov: 1097
Pridružen: 26.06.2004 09:59:52

Kako z miško pisat?

OdgovorNapisal/-a Fortuna » 30.06.2011 11:44:00

Koda: Izberi vse

procedure TForm1.Image1MouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
   Image1.Canvas.Pen.Color:=clyellow;
Image1.Canvas.LineTo(X,Y);

 pisibool:=true;
end;

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

 BEGIN

 if pisibool then
  begin
 Image1.Canvas.Pen.Color:=clyellow;
Image1.Canvas.LineTo(X,Y);
  end;

end;

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



Z miško bi rad risal tiskane črke tako, da riše takrat, ko je miška MouseDown in da neha pisat ko je
MouseUp.

Težava je, da takoj ko začnem znova pisat naredi črto od zadnje prekinitve pisanja.

Kako naučiti program, da bi začel pisati na koordinatah . kjer kliknem na Image1.

Kakšen predlog bi bil dobrodošel.
lp

Fortuna
Prispevkov: 1097
Pridružen: 26.06.2004 09:59:52

Re: Kako z miško pisat?

OdgovorNapisal/-a Fortuna » 30.06.2011 11:50:11

ah sem našel.


Image1.Canvas.MoveTo(X,Y);
reši moj problem

mig640
Prispevkov: 59
Pridružen: 03.01.2008 11:36:54

Re: Kako z miško pisat?

OdgovorNapisal/-a mig640 » 30.06.2011 11:59:32

Koda: Izberi vse

procedure TForm1.Image1MouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
 Canvas.MoveTo(x,y);
end;

procedure TForm1.Image1MouseMove(Sender: TObject; Shift: TShiftState; X,
  Y: Integer);
begin
if ssLeft in Shift then
begin
 Canvas.LineTo(X,Y);
end;

end;


edit by admin: hvala, ker uporabljaš code značko


Vrni se na

Kdo je na strani

Po forumu brska: 0 registriranih uporabnikov in 2 gostov