Hallo Zusammen!
Eigentlich sollte man doch davon ausgehen, dass der "IFMXVirtualKeyboardService" auf jeder Plattform das richtige macht.
Auf iOS & Android funktioniert es ja bekanntlich, aber auf Windows nicht.
Obwohl ein
Delphi-Quellcode:
if TPlatformServices.Current.SupportsPlatformService(IFMXVirtualKeyboardService)
then OK := true
else OK := false;
true ergibt. Wird leider keine Tastatur eingeblendet, wenn ein TEdit den Focus hat.
Warum nicht?
OK versuchen wir es per Hand...
Delphi-Quellcode:
procedure TForm.Edit1Enter(Sender: TObject);
var
IKEY : IFMXVirtualKeyboardService;
begin
if TPlatformServices.Current.SupportsPlatformService(IFMXVirtualKeyBoardService,IKEY) then
IKey.ShowVirtualKeyboard(TEdit(Sender));
end;
Das funktioniert - insofern, dass die Tastatur eingeblendet wird - aber:
1. Will ich nicht in jedem onEnter/onExit so etwas rein setzen
2. dauert es ewig bis die Tastaur sichtbar ist.
3. Ist das ein "verblödetes" Form, welches als 1. mal den Focus klaut und sowieso irgendwo im Weg rum steht.
Wie geht es richtig? Habe ich etwas übersehen?
Grüsse Mavarik