AW: Automatische Anzeige der virt. Tastatur unterdrücken
@einbeliebigername
Zunächst danke für deine Bemühungen. Vielleicht kann ich mich irgendwann einmal revanchieren. Zitat:
Bis auf weiteres haben wir uns für die Lösung mit den doppelten Steuerelementen und der Steuerung der Sichtbarkeit entschieden. Damit erreichen wir in unserem Fall die größte Flexibilität. Zitat:
|
AW: Automatische Anzeige der virt. Tastatur unterdrücken
Zitat:
|
AW: Automatische Anzeige der virt. Tastatur unterdrücken
Zitat:
Kein Direktdrücken für eine Schnellwahlfunktion. Für F-Tasten immer stichtbar und Zahlen als Zehnerblock wäre mehr als ausreichend genug Platz. :cry: |
AW: Automatische Anzeige der virt. Tastatur unterdrücken
Joar, also bezüglich SetInputScope gibt es noch garkeine Meldungen auf https://quality.embarcadero.com
und beim Anderen .... joar, hatte schon wieder ganz vergessen, aber da hat sich eh nichts getan :freak: https://quality.embarcadero.com/brow...Description%22 |
AW: Automatische Anzeige der virt. Tastatur unterdrücken
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo,
ich habe noch weiter geforscht. Mir fehlt ja noch das Reagieren auf das Ein-/Aus-blenden der Tastatur. Ich habe mit den Schlagwörtern und Bezeichnern von der Seite https://docs.microsoft.com/de-de/win...touch-keyboard die Suchen gequält. Bei einer Suche für dieses Thread bin ich mal auf den Blogbeitrag (https://blogs.embarcadero.com/de/delphi-winui-3-demo/) von Embarcadero zum Thema Win UI 3 gestoßen. Dort geht es eigentlich mehr um XAML, aber man ist ja schon etwas verzweifelt und greift nach dem kleinsten Strohhalm. Ich hatte auch schon das Demo-Projekt aus GetIt auf der Platte und bin mit einem Bezeichner fündig geworden. In der Unit
Delphi-Quellcode:
gibt es die Klasse
Winapi.UI.ViewManagement
Delphi-Quellcode:
mit der Klassenmethode
TCore_CoreInputView
Delphi-Quellcode:
. Diese gibt ein Interface vom Type
GetForCurrentView
Delphi-Quellcode:
zurück, welches unteranderem zwei Funktionen
Core_ICoreInputView
Delphi-Quellcode:
und
TryShowPrimaryView
Delphi-Quellcode:
kennt. Ich habe das mal ausprobiert (aktualisiertes Projekt im Anhang). Bei mir geht mit den Funktionen die Bildschirmtastatur auf und zu.
TryHidePrimaryView
Bloß mit dem OcclusionsChanged werde ich nicht ganz warm. Die Liste, welche man da bekommt, ist sehr oft leer. Und bei dem OcclusionKind hab ich bis jetzt nur Floating gesehen. Nun gilt es an die richtigen Interfaces zu kommen. Mich interessiert z.B.:
Delphi-Quellcode:
Core_ICoreInputView4 = interface(IInspectable)
['{002863D6-D9EF-57EB-8CEF-77F6CE1B7EE7}'] function add_PrimaryViewShowing(handler: TypedEventHandler_2__Core_ICoreInputView__Core_ICoreInputViewShowingEventArgs): EventRegistrationToken; safecall; procedure remove_PrimaryViewShowing(token: EventRegistrationToken); safecall; function add_PrimaryViewHiding(handler: TypedEventHandler_2__Core_ICoreInputView__Core_ICoreInputViewHidingEventArgs): EventRegistrationToken; safecall; procedure remove_PrimaryViewHiding(token: EventRegistrationToken); safecall; end; |
AW: Automatische Anzeige der virt. Tastatur unterdrücken
Du warst schneller, den IInputView hatte MS jetzt auch:
Zitat:
|
AW: Automatische Anzeige der virt. Tastatur unterdrücken
Vielen Dank an euch beide für eure Mühen.
Das kommt genau richtig, der Ansatz mit dem doppelten, schreibgeschützten Eingabefeldern hat nämlich leider doch einen Haken. Wir nach auf von TEdit.SetFocus das Eingabefeld erneut angeklickt, so öffnet sich letztendlich doch leider noch die Tastatur. Ich werde mir die Tage die genannte Schnittstelle genauer anschauen. |
AW: Automatische Anzeige der virt. Tastatur unterdrücken
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo,
Zitat:
Zitat:
Zitat:
Es funktioniert wenn man die Bildschirmtastatur generell nicht aufgehen lassen will (also immer ein TryCancel macht, aber ich habe das bei Anwendungswechsel noch nicht getestet). Das Problem ist, dass dieses PrimaryViewShowing bei jedem Focuswechsel gefeuert wird, auch wenn die Bildschirmtastatur schon eingeblendet ist. Wenn man das TryCancel aufruft wenn die Tastatur bereits eingeblendet ist, geht diese nicht zu und kommt etwas durcheinander. Sie schließt sich dann nicht mehr automatisch. Leider fehlt noch eine Möglichkeit abzufragen ob die Tastatur eingeblendet ist. Beim stöbern in der MS-Doku bin ich auf CoreTextEditContext.InputPaneDisplayPolicy gestoßen. Damit soll man das automatische Einblenden der Tastatur abschalten können. Der nötige Aufzählungstyp ist auch schon in der Unit Winapi.UI.Text vorhanden. Aber das entsprechende Interface fehlt. |
AW: Automatische Anzeige der virt. Tastatur unterdrücken
Ich hatte heute Zeit, mir dein letztes Beispielprojekt einmal genauer anzuschauen. Leider funktioniert die Unterdrückung der virt. Tastatur auf dem verwendeten Handheld auf Grund der Verwendung von Windows 10 Enterprise LTSC (Version 1809) nicht: das Interface Core_ICoreInputView4 wird von dieser Windows Version noch nicht unterstützt, es wurde laut Dokumenation erst in Version 2004 eingeführt.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 05:55 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