Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Suche Touch Demo (https://www.delphipraxis.net/163061-suche-touch-demo.html)

SvB 14. Sep 2011 11:21

Suche Touch Demo
 
Ich habe mal irgendwo eine Demo gesehen wo jemand per Gesten Bilder fließend von rechts nach links und umgekehrt schiebt. Ich weiß jetzt nicht mehr, ob ich das selbst mal als Demo hatte oder ob ich das mal in irgendeinem Video gesehen habe. Kennt vielleicht jemand diese Demo und wo ich die finden kann?

Viele Dank für Eure Hilfe.

Darlo 14. Sep 2011 12:31

AW: Suche Touch Demo
 
Ich mache das im onGesture-Event wie folgt:

Code:
 
if (Sender is TImage) then
    begin
      if EventInfo.GestureID = igiZoom then
        begin
          Handled := true;
            if gfBegin in EventInfo.Flags then
              startDistance := EventInfo.Distance
            else
              begin // forführen der geste

                if ((EventInfo.Distance)/startDistance < 1.1)
                and ((EventInfo.Distance)/startDistance > 1) then
                  begin
                    (sender as Timage).Height := Trunc((sender as Timage).Height*((EventInfo.Distance)/startDistance));
                    (sender as Timage).Width := Trunc((sender as Timage).Width*((EventInfo.Distance)/startDistance));
                  end
                else
                  begin
                    (sender as Timage).Height := Trunc((sender as Timage).Height*(EventInfo.Distance/startDistance));
                    (sender as Timage).Width := Trunc((sender as Timage).Width*(EventInfo.Distance/startDistance));
                  end;
                startDistance := EventInfo.Distance;
                (sender as TImage).Repaint;
                end;
          end;


      if EventInfo.GestureID = 260 then
        begin
          Handled := true;
            if gfBegin in EventInfo.Flags then
              begin
                offsetX := EventInfo.Location.X;
                offsetY := EventInfo.Location.Y;
              end
            else
              begin
                (sender as Timage).BringToFront;
                (sender as Timage).Left := (sender as Timage).Left+EventInfo.Location.X-offsetX;
                (sender as Timage).Top := (sender as Timage).Top+EventInfo.Location.Y-offsetY;
              end;
         end;
    end;

SvB 14. Sep 2011 14:28

AW: Suche Touch Demo
 
Danke, das werde ich mir mal reinziehen. Wollte das Rad nicht noch mal neu erfinden und hätte gerne auf einen bestehenden, funktionierenden Code zurückgegriffen. Ich werde mal schauen, in wie weit ich das für mich anpassen kann.


Alle Zeitangaben in WEZ +1. Es ist jetzt 15:01 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz