Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Cross-Platform-Entwicklung (https://www.delphipraxis.net/91-cross-platform-entwicklung/)
-   -   Delphi 10.2 Firemonkey: VirtualKeyboard höhe (https://www.delphipraxis.net/193452-delphi-10-2-firemonkey-virtualkeyboard-hoehe.html)

Loko789 2. Aug 2017 10:03

Delphi 10.2 Firemonkey: VirtualKeyboard höhe
 
Hallo an alle,

ich stehe vor folgendem Problem. Ich möchte, wenn das VK gezeigt wird die Höhe von diesem haben. Gelöst habe ich es wie folgt:
Delphi-Quellcode:
procedure TForm1.FormVirtualKeyboardShown(Sender: TObject;
  KeyboardVisible: Boolean; const Bounds: TRect);
begin
   VertScrollBox1.Margins.Bottom := Bounds.Height;
end;

procedure TForm1.FormVirtualKeyboardHidden(Sender: TObject;
  KeyboardVisible: Boolean; const Bounds: TRect);
begin
  VertScrollBox1.Margins.Bottom := 0;
end;
Dies funktioniert auch ohne Probleme beim ersten Mal(Höhe beträgt etwa 340px). Ab dann, wenn sich das VKShow Event erneut ausführt, beträgt die Höhe nur noch 24.
Dies ist auf allen Android-Geräten zurückzuverfolgen.

Kann mir einer weiterhelfen?
Danke

Gruß
Loko

Rollo62 3. Aug 2017 07:12

AW: Delphi 10.2 Firemonkey: VirtualKeyboard höhe
 
Hilft dir das weiter ?

Rollo

Loko789 3. Aug 2017 09:13

AW: Delphi 10.2 Firemonkey: VirtualKeyboard höhe
 
Liste der Anhänge anzeigen (Anzahl: 1)
Zitat:

Zitat von Rollo62 (Beitrag 1377974)
Hilft dir das weiter ?

Rollo

Anhang 47707
Hier der beweis. :? Die Höhe des VK ist 24. Was kann man dagegen machen bzw gibt es eine andere Alternatve, um die Höhe des VK zu bekommen?

Uwe Raabe 3. Aug 2017 09:40

AW: Delphi 10.2 Firemonkey: VirtualKeyboard höhe
 
Das ist ein bekannter Fehler in Tokyo: FormVirtualKeyboardShown gives wrong bounds

Loko789 3. Aug 2017 09:53

AW: Delphi 10.2 Firemonkey: VirtualKeyboard höhe
 
Zitat:

Zitat von Uwe Raabe (Beitrag 1377978)
Das ist ein bekannter Fehler in Tokyo: FormVirtualKeyboardShown gives wrong bounds

Gibt es ein Workaround dafür? Denn auf diese Funktion verzichten kann ich nicht.

Uwe Raabe 3. Aug 2017 10:07

AW: Delphi 10.2 Firemonkey: VirtualKeyboard höhe
 
Zitat:

Zitat von Loko789 (Beitrag 1377979)
Gibt es ein Workaround dafür?

Keinen offiziellen. Hilft es, wenn du dir die korrekte Höhe aus dem ersten Aufruf merkst?

Loko789 3. Aug 2017 10:19

AW: Delphi 10.2 Firemonkey: VirtualKeyboard höhe
 
Zitat:

Zitat von Uwe Raabe (Beitrag 1377980)
Zitat:

Zitat von Loko789 (Beitrag 1377979)
Gibt es ein Workaround dafür?

Keinen offiziellen. Hilft es, wenn du dir die korrekte Höhe aus dem ersten Aufruf merkst?

Das habe ich mir auch schon überlegt. Nun ist es so, dass es nicht immer beim ersten mal klappt. Manchmal beträt (wie bei meinem test oben) die erste Höhe schon 24.

sko1 3. Aug 2017 10:32

AW: Delphi 10.2 Firemonkey: VirtualKeyboard höhe
 
So ähnliche Effekte habe ich mit 10.1 Berlin aber auch, nur dass es meist beim ersten mal falsch war!

Merken hilft aber auch nicht viel, denn im Hochformat ist die Tastatur höher als im Querformat und wenn man dann noch, während die Tastatur ausgeklappt ist, dreht...

Ich habe mir insofern beholfen dass ich nicht bis über die Tastatur scrolle sondern so weit dass das aktive Control (Edit, Memo, ...) unter den oberen Bildschirmrand geschoben wird, dann bleibt halt etwas Platz nach unten zur Tastatur...

Ciao
Stefan

Rollo62 4. Aug 2017 08:41

AW: Delphi 10.2 Firemonkey: VirtualKeyboard höhe
 
Ich experimentiere gerade damit in dem EvKeyboardShown Event einfach eine Verzögerung einzubauen, und dann die Vk-Fensterhöhe etwas später zu bestimmen.

Das sieht ganz gut aus, aber es fühlt sich wieder wie Honig an:
- mal kommt EvKeyboardShown sofort
- mal kommt EvKeyboardShown 5 Sek. später
- mal glaube ich kommt es gar nicht

Irgendwie ist da insgesamt der Wurm drin.
Ich würde auch gerne eine gute Lösung finden.

Ein schneller Workaround wäre auch einfach Screen.Height div 2 zu nehmen,
also einen festen Wert, wenn der zufällig bei dir gut passt.
Aber da müsste man auch Portrait/Lanscape in Betracht ziehen, und die ganzen verschiedenen Bauformen die es so gibt ...

Rollo

Loko789 4. Aug 2017 11:19

AW: Delphi 10.2 Firemonkey: VirtualKeyboard höhe
 
Vielen dank führ eure ganzen Tipps :thumb:
Ich denke ich muss einen Workaround mit der Hälfte des Bildschierms nutzen. Jetzt hilft nur noch abwarten und Tee trinken :cheers:


Alle Zeitangaben in WEZ +1. Es ist jetzt 00:09 Uhr.
Seite 1 von 2  1 2      

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