AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Virtuelle Tastatur ohne Focus

Ein Thema von mcbain · begonnen am 16. Nov 2011 · letzter Beitrag vom 18. Nov 2011
Antwort Antwort
Benutzerbild von Uwe Raabe
Uwe Raabe
Online

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.758 Beiträge
 
Delphi 12 Athens
 
#1

AW: Virtuelle Tastatur ohne Focus

  Alt 17. Nov 2011, 10:11
Aber ich denke das ganze muss wesentlich einfacher zu realisieren sein, da es ja in einer externen Anwendung genau so funktioniert wie ich möchte. Ich will halt nur nicht immer ne externe Anwendung aufrufen müssen.
Es ist aber halt doch ein Unterschied, ob eine externe Anwendung aktiviert wird (oder eben auch nicht), oder ob ein anderes Form der aktiven Anwendung den Fokus erhält. Manchmal ist das, was einfach erscheint, doch eben nicht so einfach zu realisieren - wenn es denn überhaupt geht. Es ist sehr wohl möglich, daß die mitgelieferte Bildschirmtastatur in diesem Fall für deine Zwecke nicht geeignet ist.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Benutzerbild von ConnorMcLeod
ConnorMcLeod

Registriert seit: 13. Okt 2010
Ort: Bayern
490 Beiträge
 
Delphi 10.4 Sydney
 
#2

AW: Virtuelle Tastatur ohne Focus

  Alt 17. Nov 2011, 10:30
Immer, wenn eine Eingabemaske den Fokus bekommt, kann man sich im VirtuellenKeyboard in einem Property merken, welche es ist.
Immer, wenn ein Eingabefeld den Fokus bekommt, kann man sich im VirtuellenKeyboard einem Property merken, welches es ist.
Beim Klick eines Buttons im VK kann man nun dem richtigen Edit eine Message senden, welche Taste gedrückt wurde, und danach die richtige Maske retour-aktivieren.
...oder?
Nr.1 Delphi-Tool: [F7]
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe
Online

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.758 Beiträge
 
Delphi 12 Athens
 
#3

AW: Virtuelle Tastatur ohne Focus

  Alt 17. Nov 2011, 11:02
Immer, wenn eine Eingabemaske den Fokus bekommt, kann man sich im VirtuellenKeyboard in einem Property merken, welche es ist.
Immer, wenn ein Eingabefeld den Fokus bekommt, kann man sich im VirtuellenKeyboard einem Property merken, welches es ist.
Beim Klick eines Buttons im VK kann man nun dem richtigen Edit eine Message senden, welche Taste gedrückt wurde, und danach die richtige Maske retour-aktivieren.
...oder?
Da die Keyboard-Komponente keine Events bereitstellt, in die man sich einklinken kann, bleibt eigentlich nur eine Ableitung als Lösung. Dummerweise sind die relevanten Methoden aber nicht virtuell. Damit kann man auch gleich eine eigene Komponente schreiben. Einfach ist das alles aber wirklich nicht.

Ein möglicher Ansatz wäre allerdings auch, die FormKey-Events des Keyboard-Forms zu verwenden. Das Weiterleiten der Messages and das passende Control ist allerdings immer noch unschön - vor allem, da das Keyboard ja eigentlich dieses (zumindest im eigenen Formular) schon korrekt ausführen würde.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Benutzerbild von ConnorMcLeod
ConnorMcLeod

Registriert seit: 13. Okt 2010
Ort: Bayern
490 Beiträge
 
Delphi 10.4 Sydney
 
#4

AW: Virtuelle Tastatur ohne Focus

  Alt 17. Nov 2011, 11:17
Yo, ich kenne diese Keyboard-Komponente leider nicht. Meine Lösung war anno damals ein eigenes Form mit einem Haufen Buttons und diesen beiden Properties. In einer globalen Funktion reagiere ich auf die Fokusgeschichten. Funktioniert bis heute, obwohl es bestimmt eleganter ginge.

Der Vorteil für mich (und ich meine damit diesen Anwendungsfall) liegt darin, alles total unter Kontrolle zu haben inkl Sondertasten und Farben und Dimensionen und Buttontextur und Multilanguage-Sonderzeichen etc. d.h. wenn einmal etwas nicht funktioniert, dann kann ich sicher davon ausgehen, dass der Fehler bei mir liegt und nicht an irgendwelchen kryptischen Länder/Windows/Tastatur/Hardware-Einstellungen.
Nr.1 Delphi-Tool: [F7]

Geändert von ConnorMcLeod (17. Nov 2011 um 11:22 Uhr)
  Mit Zitat antworten Zitat
mcbain

Registriert seit: 18. Mai 2011
50 Beiträge
 
#5

AW: Virtuelle Tastatur ohne Focus

  Alt 18. Nov 2011, 11:56
Vielen Dank für eure zahlreichen Antworten, hätte nicht gedacht, dass es sich so schwierig gestaltet.
Dann muss ich evtl. doch die einzelnen Keys per OnKeyPress des Forms an die jeweilige Komponente schicken....
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:34 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz