Tastenabfrage

M

Mikrowelle

Hallo
Vileicht liegt an der Uhrzeit ich weis es nicht.

Ich möchte gern das mein Programm was macht sobald man auf die taste a gedrückt hat. Mehr nicht. Bis jetzt habe immer listener erzeugt und sie an irgendwelche komponente angebunden. Z.b jTextArea. Das ist auch jetzt kein Problem.

Aber ich möchte das es reagiert auch wenn man kein JtextArea nutzt, das es absolut unabhängig ist.

Ich krieg das nicht einen Listener zu bauen der reagiert sobald der Benutzer die Tase gedrückt hat.

Später soll das programm kompeltt im hintergrund arbeiten, so das garkeine GUI zu sehen sein wird, aber beim drücken von a soll trotzdem was passieren. Was hier aber nicht Gegenstand der diskussion werden soll.

Wie löse ich dies ?

Samy
 
Moin,

ich denke mal, dass Du versuchen musst, für einen Programm-globalen Zugriff den diesbezüglichen Listener auf der Ebene anzulegen, auf der Du die Taste abfragen willst, also ggf. im "Bereich main()".

Ich denke allerdings nicht, dass das funktionieren kann, wenn Dein Programm im Hintergrund läuft !
Nimm' mal an, es läuft und Du hast gleichzeitig Word geöffnet und schreibst einen Text! Wer soll wie entscheiden, ob Dein 'a' zum text gehört oder von Hintergrundprozeß abgearbeitet werden soll ..... :rolleyes:

Gruß
Klaus
 
Global Hotkeys wäre hier das Stichwort. Allerdings kann Java sowas nicht umsetzen. Du kannst Hotkeys setzen und nutzen, solange die Anwendung im Vordergrund ist, aber sobald diese nicht mehr den Fokus hat, is Sense. Abgesehn davon ist ein einzelner Buchstabe eine schlechte und erst recht der Buchstabe 'a', da er sehr häufig verwendet wird. Sowas würde ich also nicht als Hotkey verwenden.

EDIT:
Diese API hier sieht sehr vielversprechend aus: JIntellitype

EDIT2: Habs ausprobiert, funktioniert einwandfrei, kann ich nur empfehlen ^^
 
Zuletzt bearbeitet:
Zurück