Delphi-PRAXiS
Seite 2 von 4     12 34      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Cross-Platform-Entwicklung (https://www.delphipraxis.net/91-cross-platform-entwicklung/)
-   -   Delphi XE7: Zoom von Android App -wie? (https://www.delphipraxis.net/182593-xe7-zoom-von-android-app-wie.html)

Mavarik 6. Nov 2014 09:45

AW: XE7: Zoom von Android App -wie?
 
Zitat:

Zitat von Kralle (Beitrag 1278860)
Wenn so was nicht geht, werde ich wohl versuchen müssen jedes Objekt einzeln sinnvoll zu vergrößern.
Gruß heiko

Quark sind nur wenigen Zeilen...

Delphi-Quellcode:
procedure TPapier.OnPapierGesture(Sender: TObject;const EventInfo: TGestureEventInfo; var Handled: Boolean);
var
  LScale,
  Direction : Single;
begin
  if EventInfo.GestureID = igiZoom then
    begin
      if not(TInteractiveGestureFlag.gfBegin in EventInfo.Flags) and not(TInteractiveGestureFlag.gfEnd in EventInfo.Flags) then
        begin
          Direction := EventInfo.Distance/FLastDIstance;
          LScale := ZoomPanel.Scale.X * Direction;
          if LScale < 1 then
            LScale := 1;

          ZoomPanel.Scale.X := LScale;
          ZoomPanel.Scale.Y := LScale;

          ZoomPanel.Width := ZoomWidth * LScale;
          ZoomPanel.Height := ZoomHeight * LScale;
        end;
      FLastDIstance := EventInfo.Distance;
    end;
end;
Grüsse Mavarik

Kralle 6. Nov 2014 19:56

AW: XE7: Zoom von Android App -wie?
 
Hallo Mavarik,

Zitat:

Zitat von Mavarik (Beitrag 1278883)
Quark sind nur wenigen Zeilen...

Mit Deinem Code Zooms Du doch auch nur ein Panel - oder habe ich Deinen Code falsch verstanden.
Das heißt, ich müsste Deinen Code für jedes Objekt anwenden.

Gruß HEiko

Daniel 6. Nov 2014 20:23

AW: XE7: Zoom von Android App -wie?
 
Er zoomt ein TStretchPanel, welches dann seinerseits alle in ihm enthaltenen Controls zoomt.

Kralle 6. Nov 2014 23:29

AW: XE7: Zoom von Android App -wie?
 
Moin,
Zitat:

Zitat von Daniel (Beitrag 1278990)
Er zoomt ein TStretchPanel, welches dann seinerseits alle in ihm enthaltenen Controls zoomt.

das ist aber nicht von embarcadero - oder?
Im docwiki habe ich es nicht gefunden.

gruß heiko

Daniel 7. Nov 2014 06:55

AW: XE7: Zoom von Android App -wie?
 
Liste der Anhänge anzeigen (Anzahl: 1)
TStretchPanel? :shock: Das ist doch falsch! Wer hat denn das ... ups .. ich? :oops:
Sorry, ich habe mich vertan.

Es ist natürlich ein TScaledLayout. (Das gibt's tatsächlich.)

Zoomen könntest Du z.B. wie folgt:
Delphi-Quellcode:
  ScaledLayout1.Scale.X := 2;
  ScaledLayout1.Scale.Y := 2;
Das sieht dann in etwa so aus:
Anhang 42113

Mavarik 7. Nov 2014 10:00

AW: XE7: Zoom von Android App -wie?
 
Zitat:

Zitat von Daniel (Beitrag 1279003)
TStretchPanel? :shock: Das ist doch falsch! Wer hat denn das ... ups .. ich? :oops:
Sorry, ich habe mich vertan.

Es ist natürlich ein TScaledLayout. (Das gibt's tatsächlich.)

Welches objekt Du nimmst ist in FM total egal... nen Panel nen Edit whatever.

Alle Childs des Elements übernehmen den Scale...

Mavarik

Darlo 7. Nov 2014 11:19

AW: XE7: Zoom von Android App -wie?
 
Das TScaledLayout macht das ganze nur automatisch. Soll heißen, wenn das Align des TScaledLayout auf Client gesetzt ist, und der Parent (am sinnigsten das Form) vergrößert oder verkleinert wird, werden auch alle Children des TScaledLayout entsprechend verändert. Wichtig ist hier, dass man für die Proportionalität selber sorgen muss, zumindest wenn diese gewünscht ist.

Gruß

Mavarik 7. Nov 2014 11:23

AW: XE7: Zoom von Android App -wie?
 
Zitat:

Zitat von Darlo (Beitrag 1279034)
Das TScaledLayout macht das ganze nur automatisch. Soll heißen, wenn das Align des TScaledLayout auf Client gesetzt ist, und der Parent (am sinnigsten das Form) vergrößert oder verkleinert wird, werden auch alle Children des TScaledLayout entsprechend verändert. Wichtig ist hier, dass man für die Proportionalität selber sorgen muss, zumindest wenn diese gewünscht ist.

Gruß

Da hast Du recht. Auf Windows macht das vielleicht Sinn, aber nicht auf "dem" Device.
Hier wirst Du im seltensten Fall die Anwendung vergrößern. :stupid:

mkinzler 7. Nov 2014 11:26

AW: XE7: Zoom von Android App -wie?
 
Auf einem Handy vielleicht nicht, aber bei einem Tablett könnte das bald möglich sein. Zudem gibt es auch PCs mit Android

Darlo 7. Nov 2014 11:29

AW: XE7: Zoom von Android App -wie?
 
TScaledLayout habe ich mal für iPhone/iPad (1 Form Anwendung) versucht zu "missbrauchen". Seit dem mache ich lieber 2 verschiedene Formulare ;-)


Alle Zeitangaben in WEZ +1. Es ist jetzt 08:37 Uhr.
Seite 2 von 4     12 34      

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