AGB  ·  Datenschutz  ·  Impressum  







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

Tasten undabhänig vom Focus abfangen

Ein Thema von daniel8520 · begonnen am 9. Aug 2005 · letzter Beitrag vom 16. Aug 2005
Antwort Antwort
Seite 1 von 2  1 2      
daniel8520
(Gast)

n/a Beiträge
 
#1

Tasten undabhänig vom Focus abfangen

  Alt 9. Aug 2005, 22:34
Hallo,

ich hab jetzt schon im Forum gesucht, aber irgendwie war nie das richtige dabei. Ich beschreib euch am besten mal, was ich möchte:
Ich möchte, dass z.B. bei drücken von F5 eine ganz bestimmt Funktion ausgeführt wird. Nun geht das ja nicht im OnKeyPress vom Formular, da selbiges es ja nich wahrnimmt, wenn z.B. ein Edit den Focus hat.
Was ich also bräuchte, wäre eine Funktion die gloabl Tasten abfängt. Ich hatte da auch schon etwas gefunden, nur war das wieder etwas zu global. Es sollte nämlich nicht Fensterübergreifend funktionieren, da ich in einem anderen Fenster z.B. F5 für eine ganz anderer Funktion nutzen möchte.

Könnt ihr mir helfen, oder habt ihr mein Problem überthaupt verstanden?


Vielen Dank für eurer Antworten im Vorraus.
  Mit Zitat antworten Zitat
Benutzerbild von Jelly
Jelly

Registriert seit: 11. Apr 2003
Ort: Moestroff (Luxemburg)
3.741 Beiträge
 
Delphi 2007 Professional
 
#2

Re: Tasten undabhänig vom Focus abfangen

  Alt 9. Aug 2005, 22:37
Du könntest eine Actionlist einsetzen, und eine Action mit dem ShortCut F5 erstellen. Die Action funktioniert nur in der Form.
  Mit Zitat antworten Zitat
daniel8520
(Gast)

n/a Beiträge
 
#3

Re: Tasten undabhänig vom Focus abfangen

  Alt 9. Aug 2005, 22:39
Ist ne echt gute Idee!
Danke!
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#4

Re: Tasten undabhänig vom Focus abfangen

  Alt 9. Aug 2005, 22:39
du musst "KeyPreview" vom Formular auf True setzen, dann bekommst du auch wenn der Focus in einem Edit ist dort das OnKeyPress ausgelöst
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
freak24
(Gast)

n/a Beiträge
 
#5

Re: Tasten undabhänig vom Focus abfangen

  Alt 9. Aug 2005, 22:42
Einfacher wäre es doch die KeyPreview-Eigenschaft aus True zu setzen.

[Edit]Wo war der Kasten???[/Edit]
  Mit Zitat antworten Zitat
daniel8520
(Gast)

n/a Beiträge
 
#6

Re: Tasten undabhänig vom Focus abfangen

  Alt 9. Aug 2005, 22:44
Hey, cool!

Ich dachte echt, wenn ein Objekt den Focus hat, kann es das Formular nich erkennen.


Vielen Dank an euch!

  Mit Zitat antworten Zitat
Benutzerbild von Jelly
Jelly

Registriert seit: 11. Apr 2003
Ort: Moestroff (Luxemburg)
3.741 Beiträge
 
Delphi 2007 Professional
 
#7

Re: Tasten undabhänig vom Focus abfangen

  Alt 9. Aug 2005, 23:05
Zitat von freak24:
Einfacher wäre es doch die KeyPreview-Eigenschaft aus True zu setzen.
F5 wird im OnKeyPress jedoch nicht abgefangen. Ich tendiere weiterhin für eine TAction.
  Mit Zitat antworten Zitat
daniel8520
(Gast)

n/a Beiträge
 
#8

Re: Tasten undabhänig vom Focus abfangen

  Alt 9. Aug 2005, 23:07
Zitat von Jelly:
Zitat von freak24:
Einfacher wäre es doch die KeyPreview-Eigenschaft aus True zu setzen.
F5 wird im OnKeyPress jedoch nicht abgefangen. Ich tendiere weiterhin für eine TAction.
Stimmt!

Alternativ hab ich jetzt OnKeyDown genommen. Spielt keine Rolle!
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#9

Re: Tasten undabhänig vom Focus abfangen

  Alt 10. Aug 2005, 07:25
Hallo Daniel,

Zitat von daniel8520:
Es sollte nämlich nicht Fensterübergreifend funktionieren, da ich in einem anderen Fenster z.B. F5 für eine ganz anderer Funktion nutzen möchte.
du wirst das vielleicht nicht gerne lesen, aber in jedem Windows-Programm sollte die F5-Taste eine sofortige Aktualisierung der aktuellen Ansicht auslösen. Wenn du nur für dich selbst und zum Spaß programmierst, kannst du natürlich machen was du willst. Wenn dein Programm jemals auf einem fremden Rechner eingestzt werden soll, dann solltest du dich über die von Windows verwendeten shortcuts informieren. Das Schlüsselkonzept von Windows GUI Anwendungen schlechthin ist die einheitliche Benutzerschnittstelle. Wer mehr als ein Programm regelmäßig benutzt, der wird danach trachten, Programme, die dieses Konzept nicht umsetzen, durch gleichwertige konforme Programme zu ersetzen.

Wenn du deinem Programm einen professionellen Anstrich geben willst, dann definiere eine Action "Refresh" und weise diese mit dem shortcut F5 dem Hauptmenüpunkt "Ansicht:Aktualisieren" zu. Oder vergiss einfach was ich geschrieben habe.

Grüße vom marabu

PS: Trotz Standard konfigurierbare shortcuts machen insofern Sinn, dass deine Anwendung auch in Umgebungen integriert werden kann, die überwiegend keine "well behaved programs" aufweisen.
  Mit Zitat antworten Zitat
daniel8520
(Gast)

n/a Beiträge
 
#10

Re: Tasten undabhänig vom Focus abfangen

  Alt 10. Aug 2005, 12:17
@marabu

Leuchtet mir total ein, was du schreibst. Klar macht es Sinn bestimmten Funktionen in verschiedener Software durch den gleichen ShortCut erreichbar zu machen.
Vielleicht beschreib ich dir die Software kurz, damit du siehst, das eine Refresh-Aktion oder ähnliche ShortCuts keinen Sinn machen.
Die Software besteht aus einer Kundendatenbank, einer Produktdatenbank, und verbindet diese beiden dann schließlich in einer Bestelldatenbank. Ich schreibe die Software deshalb, weil wir im nächsten Schuljahr an unserer Schule einen Online-Shop eröffnen wollen. Meine Software soll dann quasi die Buchhaltung erleichtern. Um die Buchhaltung zu erleichetern, ist es, imho, wichtig, dass jede Funktion möglichst schnell erreichbar ist. So habe ich im MainForm z.B. die Fuktionen "Neuer Kunde", "Neues Produkt", "Neue Bestellung". Wenn ich über Schnelligkeit spreche, meine ich damit, dass der Benutzer, der u.U. auch ich selbst sein werde, möglichst wenig seine Hand von Tastur zur Maus bzw. umgekehrt bewegen muss. Also, belege ich die o.g. Funktionen mit ShortCuts.
Eine Refresh-Aktion, um mal beim Besipiel F5 zu bleiben, macht wirklich keinen Sinn, da hier nicht aktualisiert werden kann.

Also dann, man liest sich!
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 19: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