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/)
-   -   Metropolis und Bildschirmtastatur (https://www.delphipraxis.net/184216-metropolis-und-bildschirmtastatur.html)

Der schöne Günther 9. Mär 2015 19:33

Metropolis und Bildschirmtastatur
 
Die Embarcadero-Seite spricht:
Zitat:

Virtuelle Tastatur: Die .dpr-Datei enthält Code zur automatischen Anzeige der Bildschirmtastatur für Komponenten, für die Benutzereingaben erforderlich sind, wenn keine physische Tastatur verbunden ist:
Delphi-Quellcode:
Application.UseMetropolisUI;


Davon sehe ich in der Praxis leider nichts: Wenn der Benutzer auf ein Edit- oder Memo-Feld patscht passiert rein gar nichts. Er kann keinen Text eingeben und nichts. Da die Anwendung Vollbild ist kann er sich auch überhaupt nicht behelfen und ist gefangen. Übersehe ich etwas oder wurde der Teil der Doku wieder von Käpt'n Blaubär geschrieben?

einbeliebigername 9. Mär 2015 20:35

AW: Metropolis und Bildschirmtastatur
 
Hallo,

zeigt doch bitte mal den Inhalt deiner dpr.

einbeliebigername.

Daniel 9. Mär 2015 20:42

AW: Metropolis und Bildschirmtastatur
 
Ist Dein Windows denn für die Verwendung des TextInputPanels konfiguriert?
https://msdn.microsoft.com/en-us/lib...(v=vs.85).aspx

Der schöne Günther 10. Mär 2015 09:40

AW: Metropolis und Bildschirmtastatur
 
Zitat:

Zitat von einbeliebigername (Beitrag 1292842)
zeigt doch bitte mal den Inhalt deiner dpr

Datei -> Neu -> VCL-Anwendung für Metropolis-UI -> Metropolis-UI-Anwendung mit Raster
Delphi-Quellcode:
program Project24;

uses
  Vcl.Forms,
  Vcl.Themes,
  Vcl.Styles,
  GroupedItems1 in 'GroupedItems1.pas' {GridForm},
  ItemDetail1 in 'ItemDetail1.pas' {DetailForm};

{$R *.res}

begin
  Application.Initialize;
  Application.UseMetropolisUI;
  TStyleManager.TrySetStyle('Metropolis UI Dark');
  Application.MainFormOnTaskbar := True;
  Application.Title := 'Metropolis UI Application';
  Application.CreateForm(TGridForm, GridForm);
  Application.CreateForm(TDetailForm, DetailForm);
  Application.Run;
end.


Zitat:

Zitat von Daniel (Beitrag 1292845)
Ist Dein Windows denn für die Verwendung des TextInputPanels konfiguriert?

Ich verstehe nicht was du meinst :-(
Was müsste ich denn einstellen? Ich habe unter Vcl.Controls die Methode
Delphi-Quellcode:
procedure SetTextInputPanelStatus(Control: TWinControl; OpenTIP: Boolean);
gefunden. Die wird sogar automatisch aufgerufen: Man setze einmal einen Haltepunkt auf
Delphi-Quellcode:
Vcl.Controls.TWinControl.UpdateTIPStatus
: Erhält (z.B. ein TEdit) den Fokus, versucht es hier die Tastatur aufzumachen. Aber der Code hat irgendwie Null Auswirkungen.

Übersehe ich etwas ganz banales?

Sanchez 24. Jun 2015 14:53

AW: Metropolis und Bildschirmtastatur
 
Hast du in der Zwischenzeit eine Lösung für das Problem gefunden?

Ich kämpfe aktuell auch mit dem TipMode.
Als Workaround rufe ich die TipTab.exe per Shelexecute im OnEnter vom TEdit auf und schließe den TipTab-Prozess wieder, wenn ich das Keyboard ausblenden will. Das hat den unschönen Effekt, dass ich zwar das Keyboard sehe, aber ich ins leere Tippe, solange ich nicht ein zweites Mal in das Edit tippe.

Wenn ich das TipTab.exe bereits im FormShow aufrufe, dann funktioniert es wie ichs mir vorstelle. Ich will aber nicht bei allen Forms bereits im Formshow das Keyboard einblenden.

viele Grüße,
Daniel

ULIK 24. Jun 2015 15:06

AW: Metropolis und Bildschirmtastatur
 
Auf welchem Windows arbeitest Du denn. Microsoft hat sich nämlich mal wieder was Tolles einfallen lassen:
die Methode das Textinputpanel über ITextInputPanel aufzurufen funktioniert nämlich nur noch bis Windows 7. Unter Windows 8 machen Aufrufe in das Interface rein gar nichts. Dafür gibt es nun anscheinend ein Interface IInputPanelConfiguration.
Eventuell liegt's daran.
Das neue Interface hab ich noch nicht getestet, was das dann genau macht (bin mir nämlich auch nicht sicher, ob das schon mit dem initialen Windows 8 vorhanden,aber noch nicht dokumentiert war oder ob sie das nachgeschoben haben).

Sanchez 25. Jun 2015 08:15

AW: Metropolis und Bildschirmtastatur
 
Ich verwende Windows 8.1. Da scheine ich mit Delphi XE6 keine Möglichkeit zu haben, die Bildschirmtastatur sinnvoll zu nutzen.

Dann verwende ich doch lieber das VCL TouchKeyboard.

ULIK 25. Jun 2015 08:34

AW: Metropolis und Bildschirmtastatur
 
Schau doch mal, ob Du über dein XE6 die Typbibliothek importieren kannst:

Könnte irgendwas mit Inputpanelconfiguration oder PenInputPanel sein. Ist das Interface IInputPanelConfiguration dann in der importierten Unit enthalten (würde mich nämlich selbst interessieren, hab nur kein Delphi auf W8 laufen).

Der schöne Günther 25. Jun 2015 09:39

AW: Metropolis und Bildschirmtastatur
 
Zitat:

Zitat von Sanchez (Beitrag 1306452)
Hast du in der Zwischenzeit eine Lösung für das Problem gefunden?

Nein. Auf keinem System funktioniert es, dass er die eingebaute Tastatur aufmacht. Keine Ahnung welchen Sinn diese Metropolis-Vorlage dann überhaupt machen soll.


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:30 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