AGB  ·  Datenschutz  ·  Impressum  







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

Lästiges Key abfangen

Ein Thema von Satyr · begonnen am 11. Dez 2022 · letzter Beitrag vom 13. Dez 2022
Antwort Antwort
Satyr

Registriert seit: 8. Feb 2012
Ort: Essen
305 Beiträge
 
Delphi 10.4 Sydney
 
#1

Lästiges Key abfangen

  Alt 11. Dez 2022, 00:08
Guten Abend,

ich bastele mir ein Tool, dessen Fläche eine Internetseite zeigt.
Also nur eine Form, ein TEdgeBrowser und eine MenuBar für ein paar Klicks.

Ein Klick davon maximiert alles auf FullScreen. Funktioniert gut, die Titelleiste und MenuBar sind dann natürlich auch weg.

Also dachte ich mir ich mache es wie mit einem VideoPlayer, das man mit ESC den Vollbildmodus beenden kann.
KeyPreview also auf True gesetzt, Key Abgefangen.

Mehr oder weniger.

Wenn ich das Programm starte, hat die Form noch den Focus. Da funktioniert das Abfangen von ESC. Wenn ich nur in der MenuBar rumklicke auch.
Sobald ich aber in TEdgeBrowser klicke,funktioniert das Abfangen nicht mehr. Leider auch nicht mit ApplicationEventsMessage.

Gibt es da noch eine andere Möglichkeit? Ich weiß nicht wie ich überwachen kann was (in dem Kontext) in TEdgeBrowser passiert. Eingebaute onKey Ereignisse hat er nicht.

Irgendwie muss ich doch trotzdem an den Key kommen können?
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.184 Beiträge
 
Delphi 12 Athens
 
#2

AW: Lästiges Key abfangen

  Alt 11. Dez 2022, 01:05
der hat seine eigene Messageloop, drum kommen dessen Events nicht im Delphi an

ist mit vielen "externen" Komponenten so,
z.B. auch das noch krankere Acrobat


also entweder z.B. via JavaScript aus dem Browser heraus
oder ein globaler Keyboardhook
$2B or not $2B
  Mit Zitat antworten Zitat
Satyr

Registriert seit: 8. Feb 2012
Ort: Essen
305 Beiträge
 
Delphi 10.4 Sydney
 
#3

AW: Lästiges Key abfangen

  Alt 11. Dez 2022, 01:07
Mist, sowas habe ich befürchtet.
Dann bastele ich ein kleines SlidePanel am oberen Rand.

Danke für die schnelle Antwort
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
9.648 Beiträge
 
Delphi 11 Alexandria
 
#4

AW: Lästiges Key abfangen

  Alt 11. Dez 2022, 12:51
Ein Tastaturhook sollte aber funktionieren.
Sebastian Jänicke
AppCentral
  Mit Zitat antworten Zitat
mytbo

Registriert seit: 8. Jan 2007
472 Beiträge
 
#5

AW: Lästiges Key abfangen

  Alt 11. Dez 2022, 21:01
Irgendwie muss ich doch trotzdem an den Key kommen können?
Wenn es nicht unbedingt ESC sein muss, bleibt es einfach. Im Beispiel zum Artikel verwende ich andere Funktionstasten, um Aktionen auszuführen.

Bis bald...
Thomas
  Mit Zitat antworten Zitat
Satyr

Registriert seit: 8. Feb 2012
Ort: Essen
305 Beiträge
 
Delphi 10.4 Sydney
 
#6

AW: Lästiges Key abfangen

  Alt 11. Dez 2022, 21:14
Die F-Tasten harre ich auch schon probiert. Funktioniert aber leider bei mir auch nur, wenn der TEdgeBrowser nicht den Fokus hat.

-
Einen Systemweiten Hook möchte ich eigentlich vermeiden.

Ich glaube ich werde einfach bei einem SlidingPanel bleiben. Muss man halt klicken statt Taste drücken.
  Mit Zitat antworten Zitat
mytbo

Registriert seit: 8. Jan 2007
472 Beiträge
 
#7

AW: Lästiges Key abfangen

  Alt 11. Dez 2022, 21:51
Die F-Tasten harre ich auch schon probiert. Funktioniert aber leider bei mir auch nur, wenn der TEdgeBrowser nicht den Fokus hat.
Bei mir funktioniert es, auch wenn ich im EdgeBrowser arbeite. Das Programm wurde mit Delphi 11.2 kompiliert.

Bis bald...
Thomas
  Mit Zitat antworten Zitat
Satyr

Registriert seit: 8. Feb 2012
Ort: Essen
305 Beiträge
 
Delphi 10.4 Sydney
 
#8

AW: Lästiges Key abfangen

  Alt 13. Dez 2022, 00:38
Ich nutze hier die Community Edition. Kann mir aber nicht vorstellen das es daran liegt.
  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 23:07 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