Du verwendest einen veralteten Browser. Es ist möglich, dass diese oder andere Websites nicht korrekt angezeigt werden. Du solltest ein Upgrade durchführen oder ein alternativer Browser verwenden.
ich habe schon wieder ein Problem mit dem Programm an dem ich bastel.
Mit der Suchfunktion habe ich nichts dazu gefunden, bzw. weiss nicht wonach
ich suchen sollte.
Zur Frage:
Ich habe ein Programm dessen Haupt-Frame beim Schliessen ausgeblendet wird.
Einige Aktionen können danach noch über ein TrayIcon ausgelöst werden,
das funktioniert soweit auch. Nun will ich aber auch Tastaturereignisse weiter verarbeiten.
Da das Frame nicht mehr angezeigt wird, kann ich dem auch schlecht einen Listener zuweisen da es
ja keinen Fokus hat, oder? Mein Programm soll halt im Hintergrund "lauern" bis eine bestimmte Tastenkombination
genutzt wird und dann weiter arbeiten.
In anderen Programmiersprachen habe ich für sowas meist Zugriff auf die Windows API und Windows Eventsqueue.
Wie mache ich sowas mit Java? Kann mir da jemand Ansatzpunkte verraten?
naja, um JNI zu lernen wäre es sinnvoll C zu können.
Ich wäre sehr dankbar wenn jemand hier einen kurzen Code posten könnte (in C/C++) der mithilfe eines Hotkeys mein Java Programm aufruft.
thx
guck z.B. auch mal hier, auch wenns da nur um den RegisterHotKey geht u. nicht viel spezifisches steht....zumindest hast du was nachdem du suchen kannst.
1. ein Objekt das die Methoden dann aufruft in eine .java Datei implementieren
2. die compilieren
3. eine JNI Header Datei mittels der .java Datei erstellen, die für meine native Methode eine Signatur erstellt
4. das ganze in C oder sowas implementieren (was ich nicht beherrsche)
5. aus der JNI Header Datei und der C-Datei eine DLL erstellen (für den Fall das es um Windows geht)
Und was mache ich dann mit der? Wie kann ich die benutzen in meinem Java-Programm? Ich brauche halt wirklich
nur die doofen Tastaturereignisse und wollte nicht noch C dafür lernen müssen. :cry:
Gibts da keine andere Lösung? Das klingt ja grauenhaft bisher. Und irgendwie kann ich mir nicht vorstellen das es für sowas keine Möglichkeit gibt nur mit Java auszukommen. Gibts vielleicht 'ne fertige Bibliothek die das kann? Für mein Tray Icon habe ich ja auch eine JAR und eine DLL verwenden müssen um das nutzen zu können.
Die sind nur unter Windows verwendbat. Unter Linux gibt es auch solche dynamischen Bibliotheken, hab aber keine Ahnung wie die sich da nennen. Müsste aber nach dem gleichen Prinzip funktionieren. Falls jemand dieser Tage so ein Ding schreibt oder etwas in der Richtung, könnt ihr mir gerne mit Quellcode aushelfen *g*
Wie gesagt, ich habe von C oder sowas keine Ahnung. :cry: