Fokus setzen nachdem JFrame in Vordergrund geholt wurde

Nametat

Mitglied
Schönen Guten Morgen,

hier mal mein Problem:

Programmablauf:

Und zwar wird mein Java JFrame (Wiegeterminal) von einem anderen Java Programm ausgeführt ( dieses läuft immoment noch auf einem RemoteDesktop ).
Sende ich nun eine Anfrage von dem Programm, so soll sich mein bereits geöffnetes Wiegeterminal in den Vordergrund setzen und auch den Fokus bekommen, damit ich mit meinem KeyListener, der auf das Jframe hört, das Gewicht eingeben kann.

Es gibt kein Textfeld oder sonstiges, wo text eingegeben werden kann. Das Gewicht wird durch JLabel auf einem JPanel angezeigt. Zudem werden die Ziffern die man über die Tastatur eingegeben hat an ein String angehängt, der beim senden des Gewichtes (wieder an das ursprüngliche Programm) in ein Double wert formatiert wird.

Das Problem:
Das Wiegeterminal wird zwar in den Vordergrund geholt, ist jedoch die ganze Zeit inaktiv, also die Symbolleiste ist grau, anstatt hervorhgehoben.

Schon versucht:
Ich habe schon requestFocus(), requestFocusInWindow(), awtEventListener(), KeyBindings,...
versucht aber nichts hat geholfen.
Google möchte mir auch nichts verraten, deshalb frage ich hier nun nach.

System:
Windows XP 32-Bit
Netbeans IDE 7.3.1
Java 1.7.0_25

Mit freundlichen Grüßen
Nametat
 
Zuletzt bearbeitet:
Ich bin es nochmal,

ist das Thema hier nicht richtig oder weiß keiner eine Antwort?

Wenn es nicht zu den Anfängerthemen gehört, bitte in das richtige Topic verschieben 🙂

Gruß
Nametat
 
Moin,

oder weiß keiner eine Antwort?
ich vermute mal er dieses ... 😉

Und zwar wird mein Java JFrame (Wiegeterminal) von einem anderen Java Programm ausgeführt
Was heißt das denn genau?
Der JFrame wird ja nicht irgendwie im luftleeren Raum hängen ... ist das ein eigenes Programm?
Wie wird er/es denn von dem zweiten Programm angesprochen?

Hier wäre detaillierte Info mit Code hilfreich!

Gruß
Klaus
 
In dem anderen Programm wird das JFrame halt ganz normal aufgerufen:
Code:
FrmWiegeterminal terminal = new FrmWiegeterminal();

wobei FrmWiegeterminal mein JFrame ist.

Code kann ich aus Datenschutzrechtlichen Gründen leider nicht zeigen und in dem Programm, indem das JFrame aufzurufen ist, darf auch nichts verändert werden.

Ich vermute mal, das es auch einen Windows-Spezifischen Grund haben kann, da das Programm, welches das JFrame aufruft auf einem Remotedesktop läuft, der dann aus unergründlichen Sachen den Fokus des JFrames klaut.

Gruß
Nametat
 
Zuletzt bearbeitet:
Es hat nichts mit dem RemoteDesktop zu tun, das JFrame hat definitiv den Fokus.

Verstehen sich denn überhaupt der Keylistener mit dem Jframe?
Es implementiert Runnable, deshalb die frage.

(Bestimmt ist es nur so ein ganz klitzekleiner Fehler und ich komm nicht drauf)

Gruß
Nametat
 
Moin,

Verstehen sich denn überhaupt der Keylistener mit dem Jframe?
Es implementiert Runnable, deshalb die frage.
Welcher KeyListener ???:L
Wer oder was ist es ???:L

Es hat nichts mit dem RemoteDesktop zu tun, das JFrame hat definitiv den Fokus.
Wenn Du da so sicher bist, dann könntest Du mal versuchen, den Frame erst zu minimieren und dann zu maximieren. Dadurch würdest Du sehen, ob du wirklich Zugriff auf ihn hast ...

Gruß
Klaus
 
Der KeyListener, der auf die Tastatur horcht, um das Gewicht eingeben zu können, steht auch im ersten Post 🙂

Und mit "es" ist das JFrame gemeint.

Der KeyListener reagiert erst, nachdem im mit der Maus einmal in das JFrame geklickt habe, also entweder habe ich ein Fokusproblem oder mit dem Thread und dem KeyListener stimmt etwas nicht.
 
Moin,

Der KeyListener, der auf die Tastatur horcht, um das Gewicht eingeben zu können, steht auch im ersten Post 🙂

Der KeyListener reagiert erst, nachdem im mit der Maus einmal in das JFrame geklickt habe, also entweder habe ich ein Fokusproblem oder mit dem Thread und dem KeyListener stimmt etwas nicht.
Mal davon abgesehen, dass ich im ersten Post nicht zu einem KeyListener finde und auch grundlegend weiß, was ein Solcher macht :
Ohne der konkreten Code zu sehen, kann man doch nur raten, ob er vielleicht am falschen Objekt hängt oder was auch immer .....

Kannst Du dann nicht wengistens versuchen, ein kleines Beispiel zu posten, mit dem man das Problem nachstellen kann?

Gruß
Klaus
 

Zurück
Oben