![]() |
MouseMove zeichnet auf Canvas Punkte
Hallo DP
Ich hab derzeit ein Problem mit Canvas und MouseMove. Ich möchte mit MouseMove auf einem Canvas zeichnen. Zieht man die Maus jedoch schneller, erscheinen statt durchgezogene Linien Punkte. Die Variable Zeichne wird mit MouseDown und Up geändert.
Delphi-Quellcode:
Danke im vorraus
procedure TMain.imCanvasMouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer); begin if Zeichne = 1 then begin with imCanvas.canvas do begin moveto(x,y); lineto(x+1,y+1); end; end; end; |
Re: MouseMove zeichnet auf Canvas Punkte
Hallo Skycl4w!
Der Ansatz war schon der Richtige, nur die Ausführung nicht ganz. So klappt es.
Delphi-Quellcode:
procedure TMain.imCanvasMouseDown(Sender:TObject; Button:TMouseButton; Shift:TShiftState; X, Y:Integer);
begin Zeichne:=True; imCanvas.canvas.moveto(x, y); end; procedure TMain.imCanvasMouseMove(Sender:TObject; Shift:TShiftState; X, Y:Integer); begin if Zeichne then imCanvas.canvas.lineto(x, y); end procedure TMain.imCanvasMouseUp(Sender:TObject; Button:TMouseButton; Shift:TShiftState; X, Y:Integer); begin Zeichne:=False; end; |
Re: MouseMove zeichnet auf Canvas Punkte
*mit brett vor Stirn schlag*
klar...wenn mans sieht isses total logisch... Danke ^^ |
Re: MouseMove zeichnet auf Canvas Punkte
stimmt habs auch ausprobiert...
das ist halt mit der "besonderen Denkweise der Programmierer" gemeint |
Re: MouseMove zeichnet auf Canvas Punkte
Zitat:
Zitat:
Ist das so schwierig? :zwinker: So ein ähnliches Beispiel steht sogar in der OH. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:40 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz