Key listener ohne Fokus aktiv behalten ?

K

KYL3R

Gast
Hey, ich habe ein Programm geschrieben, welches das Licht in meinem Zimmer an- bzw. ausschaltet. Die Krönung wär natürlich, wenn das ganze per Bluetooth übers handy funktioniert. J2ME und bluetooth ist ziemlich schwer wie ich finde, aber glücklicherweise gibts ein Programm für mein Handy, welches als fernsteuerung für musik und ähnliches funktioniert. Ich wollte das erstmal benutzen, um zu testen ob das alles so klappt wie ich es mir dachte.
Fakt ist, das handy sendet n bluetooth signal, die "server"datei auf dem pc läuft als system tray und simuliert bei bluetooth signal eingang einen virtuellen tastendruck. Für die Steuerung ist momentan Pfeiltaste Hoch bzw. runter aktiv. Mein Java programm reagiert zur zeit auf diese tasten, jedoch nur, wenn das Fenster den Fokus hat (angeklickt ist)

Ich habe gelesen, dass java zwar als system tray laufen kann (dann wäre ich unnötige Fenster los), aber dann nicht auf Tastendruck reagieren kann. Stimmt das ? gibt es da keine Möglichkeit ?

Ziel: Ich möchte 1. gern wissen wie ich die beiden fenster (einmal console und einmal dieses super fiech :D ) als tray minimiere.
Und 2. welche Möglichkeiten ich hätte, auf aktionen zu agieren, ohne dem Fenster den Fokus zuteilen zu müssen.

mfg KYL3R
 
K

KYL3R

Gast
Danke, ich nutze Windows, deshalb werde ich mir die API mal genauer ansehen. Ich denke das Tray ist danach an der Reihe, sieht auf den ersten Blick ausführlich genug erklärt aus. :)
 
K

KYL3R

Gast
Ich hoffe sie können mir noch einmal helfen. Ich habe wie in der readme von Jintellitype beschrieben maven und co installiert, path, m2_home und java_home gesetzt, alles fein. Aber wenn ich die JIntellitypeTester.java kompilieren will, bekomme ich dennoch error. 5 stück an der Zahl, alles "cannot find symbol" :( Was habe ich vergessen ?
 

André Uhres

Top Contributor
Der Compiler braucht nur die JIntellitype jar Datei im Classpath. Zum Ausführen kannst du die JIntellitype dll in dein Projektverzeichnis oder nach C:\WINDOWS\system32 kopieren.
 
K

KYL3R

Gast
Seltsam. ich hatte das gestern bei Umgebungsvariablen eingefügt, heute nochmal die url aus dem browserfenster kopiert und das alte überschrieben, jetzt geht es. Vorher hatte ich gar nicht mehr getestet, ob es geht oder nicht, kann es sein, dass der Neustart etwas damit zu tun hat ?
Ich habe gelesen, mit dem consolen befehl "set Clattpath=[...]" kann man das zwar machen (ist dann für die Sitzung erledigt), aber muss es jedes mal neu machen. Wenn man es in die Umgebungsvariablen einfügt, hat man das Problem nicht, dass es jedes mal neu gemacht werden muss.

Was ist wohl warscheinlich: Hatte ich einen Tippfehler im Classpath, oder war es der Neustart ? (mit anderen Worten, ist ein Neustart nötig, um Classpath-änderungen zu aktivieren?)
 
K

KYL3R

Gast
Gut, kompilieren klappt jetzt, nur das Ausführen macht mir jetzt Schwierigkeiten :[

"Zum Ausführen kannst du die JIntellitype dll in dein Projektverzeichnis oder nach C:\WINDOWS\system32 kopieren."
-> Hab ich einfach beides gemacht, kann ja nicht schaden, oder ?

Dennoch geht es nicht. Er sagt mir jedes Mal "Could not find the main Class JIntellitypeTester - programm will exit." -> Ich hab eines dieser Beispiele, welches auch funktioniert, da muss ich "java -cp ./classes com.melloware.JIntellitypeTester" in die konsole eingeben, wenn ich im ordner \jintellitype-example bin, [classes, com, melloware kommen darunter.]
-> -cp gibt doch den Classpath an, 1. brauche ich das, wenn ich den unter Umgebungsvariablen habe ? und 2. wieso funktioniert das bereits kompilierte programm nicht, wenn ich es so mache:
"JIntellitypeTester.java" liegt in Ordner "C:\Dokumente und Einstellungen\Kai\Eigene Dateien\Java\Global hotkeys".
-Wird über die konsole mit Javac kompiliert, 3 klassen werden dabei erstellt:

"JIntellitypeTester$1.class"
"JIntellitypeTester$2.class"
"JIntellitypeTester.class"

Nun will ich wie sonst gewohnt per [javac -cp . JIntellitypeTester] ausführen, und ich bekomme den eben genannten Fehler, wie kann er denn die Klasse NICHT finden, wenn sie vor seiner Nase liegt ? In dem Beispiel sind es 3 Unterordner, die sind nicht nötig, sofern das Projekt nicht zu groß und unübersichtlich wird, oder ? sprich : reine Ordnungssache.

Ich bin etwas ratlos... Sobald ich eine datei kompilieren und ausführen kann, würde ich ja die für mich passende datei schreiben können, aber wenn nichtmal das Beispiel funktioniert, suche ich mich bei meinen datein schwarz nach Fehlern. xD
 

André Uhres

Top Contributor
Du hast doch sicher irgendein simples Programm, das funktioniert (egal was es genau macht). Kopier den JIntellitypeTester einfach in den selben Ordner und verpasse ihm die "package" Anweisung, die auch dein funktionierendes Programm hat. Dann muss es funktionieren. Zumindest kann er nicht mehr sagen "Could not find the main Class JIntellitypeTester", sonst müsste er das gleiche auch bei deinem funktionierenden Programm sagen.
 
K

KYL3R

Gast
Ich hoffe sie haben noch ein wenig Geduld mit mir. Ich hab ein Beispiel, welches funktioniert, allerdings bisher nur in eclipse. Ich will aber erstmal ohne Eclipse arbeiten, um zu verstehen, was Eclipse eigentlich macht.

Ich habe das Beispiel aus diesem Beitrag genommen :
Melloware Forums • View topic - Working example

Wie dort beschrieben in Eclipse importiert funktioniert alles. Was muss ich jedoch tun, wenn ich mit der Konsole allein arbeiten möchte ? Ich bin intuitiv zum Ordner navigiert, in dem sich die hauptklasse befindet, dann in die Konsole den Befehl :
java -cp . JIntellitypeTester
eingegeben, aber ich bekomme den gleichen error wie immer. *verwirrt*
 
K

KYL3R

Gast
Also, ich habe nun wie empfohlen den Inhalt der Beispieldatei in eine meiner funktionierenden simplen Datein geschrieben. Ich hatte anfänglich 44 Error, dann ein paar Datein verschoben, jetzt nur noch 4. Diese hängen soweit ich das überblicke alle zusammen.

package org.apache.commons.logging does not exist

-> es müsste einen Ordner namens "org" und einen namens "apache" usw. geben oder ? Ich hab den ganzen kram aus dem Maven ordner in meinen Projektordner kopiert, weiterhin 4 error. Oder liegen commons und so weiter in einer jar ?
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
P Listener für Tastatureingaben ohne Focus Allgemeine Java-Themen 4
berserkerdq2 Was heißt es mit FXML Listener zu setzen ind Buttons zu erstellen? Allgemeine Java-Themen 6
L Wie programmiert man einen Listener? Allgemeine Java-Themen 1
S Threads Serielle Schnittstelle mit Listener / Aufrufendes GUI Allgemeine Java-Themen 4
H Listener Verständnisproblem Allgemeine Java-Themen 5
D Action Listener Problem Allgemeine Java-Themen 3
S Key Listener mit Strg + s Allgemeine Java-Themen 12
K Threads Listener für Future finish Allgemeine Java-Themen 2
TheWhiteShadow Listener Reihenfolge Allgemeine Java-Themen 4
D Listener auf System.out.err / System.out.println Allgemeine Java-Themen 5
A Listener für constructor einer bestimmen Klasse Allgemeine Java-Themen 9
E Bild mit Listener einfügen Allgemeine Java-Themen 3
serjoscha WatchDog Thread und Listener Allgemeine Java-Themen 10
hdi Listener für Desktop-Veränderungen Allgemeine Java-Themen 7
T JTextField in Listener leeren Allgemeine Java-Themen 2
lenniii Listener & JList Allgemeine Java-Themen 3
G Code-Convention für Listener Allgemeine Java-Themen 2
T Observer vs Listener Allgemeine Java-Themen 18
S Listener Allgemeine Java-Themen 3
P Abstrakte Elternklasse als Listener Allgemeine Java-Themen 6
MQue KeyAction listener Allgemeine Java-Themen 2
M generische Listener Allgemeine Java-Themen 2
S Listener für Kalender Allgemeine Java-Themen 2
B Observer vs Listener (GUI-Programmierung) Allgemeine Java-Themen 5
J Listener für Ende eines Threads gesucht... Allgemeine Java-Themen 5
S Listener Implentierung bei Eingabe in Textfeld Allgemeine Java-Themen 2
G Objekt einer inneren Klasse als Listener Allgemeine Java-Themen 3
D Boolean Listener? Allgemeine Java-Themen 28
M Listener und Performance Allgemeine Java-Themen 9
D Observer/Observable Pattern vs. Listener-Konzept Allgemeine Java-Themen 4
G Listener auf aktuelles Datum / Uhrzeit Allgemeine Java-Themen 2
Escorter Eigenen Listener schreiben Allgemeine Java-Themen 3
E Gibt es so etwas wie einen Windows Listener? Allgemeine Java-Themen 6
T SelectionProvider und Listener Frage Allgemeine Java-Themen 14
I Listener, der zeitlich-periodisch aufgerufen wird Allgemeine Java-Themen 3
R Generische Listener und Sender Allgemeine Java-Themen 12
B Listener dynamisch setzen Allgemeine Java-Themen 6
A Listener Tastatur Allgemeine Java-Themen 3
E Wie: Eigener Listener, eigenes Event (möglichst einfach) Allgemeine Java-Themen 29
D Thread vs Listener Allgemeine Java-Themen 6
K Listener einem Objekt hinzufügen Allgemeine Java-Themen 3
S Listener-Problematik in komplexem Projekt Allgemeine Java-Themen 2
I Listener/Event selber machen. Allgemeine Java-Themen 4
M Time Listener ? Allgemeine Java-Themen 2
Z Zwei Listener zwischen zwei Klassen Allgemeine Java-Themen 4
B statusbar update -> mit thread oder listener? Allgemeine Java-Themen 7
M Action-listener Allgemeine Java-Themen 6
M Bean Listener hinzufügen und Methode später überschreiben Allgemeine Java-Themen 27
G Flavor-Listener Allgemeine Java-Themen 6
E Listener für Änderung der Fenstergröße Allgemeine Java-Themen 3
W Listener an ein beliebiges Objekt hänger, der mir Änderung Allgemeine Java-Themen 8
Z Problem beim Aufruf eines Listener? Allgemeine Java-Themen 4
A HILFE: subclass von Hashtable mit listener aufstellen Allgemeine Java-Themen 5
N Taschenrechner ohne explizite und implizite Datentypen Allgemeine Java-Themen 5
Fynn29 Liste sortieren ohne Array und ohne vorgegebene Sortierung Allgemeine Java-Themen 24
R 11 GB File lesen ohne zu extrahieren Filedaten Bereich für Bereich adressieren dann mit Multi-Thread id die DB importieren Allgemeine Java-Themen 3
O Maven ein externes jar laden ohne die Applikation neu zu kompilieren Allgemeine Java-Themen 4
Mike80 Processing Programm fiert ohne Arduino ein Allgemeine Java-Themen 2
T Datum OHNE Uhrzeit Zeitzonen-übergreifend Allgemeine Java-Themen 4
N mit sysout, ohne sysout Allgemeine Java-Themen 17
O Programmierprüfung auf moodle ohne Hilfsmittel... Allgemeine Java-Themen 23
Mozart53 JLabel nur meinen Text verschieben ohne Image Allgemeine Java-Themen 3
M Switches ohne String Allgemeine Java-Themen 18
A Java JDK ohne Oracle Konto Allgemeine Java-Themen 5
H Matrix ohne Array erstellen Allgemeine Java-Themen 9
N E-Mail Validator (ohne Regex!) Allgemeine Java-Themen 7
A Java ListNode Element einfügen ohne Bibliothek Allgemeine Java-Themen 6
G Datei aus Ordner wählen, ohne den Dateinamen im Pfad angeben zu müssen Allgemeine Java-Themen 4
Thallius Zeitzone zu einem LocalDate hinzufügen aber ohne es zu ändern... Allgemeine Java-Themen 2
O Produziert das Tool "jpackage" (ab JDK 14) .exe Dateien, die auf einer Zielumgebung ohne JRE lauffähig sind ?` Allgemeine Java-Themen 7
Drachenbauer wie kann ich alle instanzen einer Klasse durchsehen, ohne, dass diese in einer Liste erzeugt wurden? Allgemeine Java-Themen 11
X Adjazenzliste ohne ArrayList Allgemeine Java-Themen 6
N Keylistener ohne Dazugehörige Gui Allgemeine Java-Themen 6
P Input/Output entfernte Datei mit Java öffnen ohne Download Allgemeine Java-Themen 5
Kirby.exe Keyboard Input ohne Enter Allgemeine Java-Themen 43
T Abgeleitetes Interface public ohne Schlüsselwort "interface"? Allgemeine Java-Themen 3
S Potenzieren mit rationalen Potenzen ohne Math.pow Allgemeine Java-Themen 16
F Timestamp in Oracle ohne Formatierung reinbekommen Allgemeine Java-Themen 7
M Drucken ohne Dialog Allgemeine Java-Themen 1
L Operatoren Java Reflections: Alle Methoden einer Klasse aufrufen ohne Exceptions Allgemeine Java-Themen 5
J .java-Dateitext Compile zur Laufzeit ohne File Allgemeine Java-Themen 15
O Zugriff auf mySQL ohne JDBC Allgemeine Java-Themen 3
S Input/Output Jave.utill.logging ohne Default-Locale also in Englisch Allgemeine Java-Themen 3
J ftp - delete file ohne appache Allgemeine Java-Themen 8
H float Berechnung: Ergebnis ohne wissenschaftliche Notation Allgemeine Java-Themen 5
offi Excel mit Inhalten aus DB öffnen ohne zu speichern Allgemeine Java-Themen 8
E String in Zahl umwandeln, ohne Befehl Integer.parseInt Allgemeine Java-Themen 3
S Java Plugin System (ohne OSGI) Allgemeine Java-Themen 10
G Array ohne Aufzählungszeichen ausgeben Allgemeine Java-Themen 6
Aruetiise Swing JOptionPane ohne denn Thread zu pausieren Allgemeine Java-Themen 1
RalleYTN Audiolänge einer MP3 Datei erhalten ohne diese vollständig zu laden Allgemeine Java-Themen 15
RalleYTN 2D-Grafik Bild ohne AWT, Swing und JavaFX rotieren Allgemeine Java-Themen 12
A BufferedReader ohne System.in Allgemeine Java-Themen 9
E Programm ohne Windowsrand(Vollbild) ? Allgemeine Java-Themen 5
B Applikation ohne (direkt)Java installiert zu haben auszuführen Allgemeine Java-Themen 8
RalleYTN Datentypen Herausfinden ob Object ein Array ist ohne den Typen des Arrays zu kennen? Allgemeine Java-Themen 12
OnDemand JavaMail ohne Anhang senden Allgemeine Java-Themen 4
N String ins Clipboard kopieren ohne makieren. Allgemeine Java-Themen 12
T Ziffernsumme ohne String Operatoren Allgemeine Java-Themen 4
E Threads Ausführung in Threads ist langsamer als ohne Threads Allgemeine Java-Themen 13

Ähnliche Java Themen


Oben