![]() |
Zoom im tImage bei Apfelmann
Hi,
Habe ein Programm, welches das Apfelmännchen auf ein tImage zeichnet, nachedem ich auf den Button zeichnen geklickt habe. Nachdem das Apfelmännchen gezeichnet wurde, möchte ich auf dem tImage zoomen können. Ich habe schon versucht einen Quellcode zu schreiben. Der Funtkioniert jedoch nicht. Ihr könnt ihn euch ja mal anschauen und sagen wo der Fehler liegt. Der Zoom kann auf 2 Arten funktionieren, ...Entweder man kann mit der Maus ein viereck ect. auf dem tImage ziehen und der Bereich wird dann vergrößert ...oder man hat eine kleine Lupe als Mauszeiger wenn man auf das tImage kommt und wenn man klickt wird das Bild immer an der Stelle wo man geklickt hat um das 2 Fache vergrößert. Ist mir egal welche funktion ihr versucht, ich habe in meinem Bsp. die 1. gewählt.
Delphi-Quellcode:
procedure TFRM_Main.FormMouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer); var a,b : real; begin a := xmin + (x-152)*(xmax-xmin) / IMG_Apfelmann.Width; b := ymax - (y-8)*(ymax-ymin) / IMG_Apfelmann.Height; FRM_Options.EDT_xmin.Text := floattostrf(a,fffixed,10,8); FRM_Options.EDT_ymax.Text := floattostrf(b,fffixed,10,8); xo := x; yl := y; xu := x; yr := y; md := true; end; procedure TFRM_Main.FormMouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); begin md := false; end; procedure TFRM_Main.FormMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); var a,b : real; begin if md then begin a := xmin + (x-152)*(xmax-xmin) / IMG_Apfelmann.Width; b := ymax - (y-8)*(ymax-ymin) / IMG_Apfelmann.Height; FRM_Options.EDT_xmax.Text := floattostrf(a,fffixed,10,8); FRM_Options.EDT_ymin.Text := floattostrf(b,fffixed,10,8); IMG_Apfelmann.canvas.Pen.Mode := pmnotxor; IMG_Apfelmann.canvas.Rectangle(xo,yl,xu,yr); IMG_Apfelmann.canvas.Rectangle(xo,yl,x,y); IMG_Apfelmann.canvas.Pen.Mode := pmcopy; xu := x; yr := y; end; end; Denke das man mein Problem versteht :gruebel: Gruß Daniel |
Re: Zoom im tImage bei Apfelmann
|
Re: Zoom im tImage bei Apfelmann
Das funtkioniert irgendwie nicht mit deinem Tipp. Wenn ich es so mache wie es dort erklärt wird, und auf den button klicke, dann erscheint über dem eigentlichen tImage des Apfelmanns, genau das selbe Apfelmann-Bild nur ein Bisschen kleiner. Es wurde nichts herangezoomt.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:58 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