B
Beni
Gast
Ich will (wollte) ein JWindow machen, auf dem ein JLabel ist (JFrame / JDialog und JButton sind leider nicht möglich, auch wenn man's dem Code nicht ansieht).
Das JLabel soll auf KeyEvents reagieren, tut es aber nicht.
Kann mir jemand sagen, woran das liegt?
Hier mal ein Beispiel, wie's nicht funktioniert:
Ich hab schon ein bisschen mit dem Focus rumgespielt, aber es ist nichts brauchbares rausgekommen.
Gruss Beni
Das JLabel soll auf KeyEvents reagieren, tut es aber nicht.
Kann mir jemand sagen, woran das liegt?
Hier mal ein Beispiel, wie's nicht funktioniert:
Code:
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
import javax.swing.JLabel;
import javax.swing.JWindow;
public class FocusWindow extends JWindow{
public static void main( String[] args ){
new FocusWindow().setVisible( true );
}
public FocusWindow(){
JLabel label = new JLabel( "drück mal einen Knopf" );
getContentPane().add( label );
label.setFocusable( true ); // nützt nichts
this.setFocusable( true ); // nützt nichts
this.setFocusableWindowState( true ); // nützt nichts
label.addKeyListener( new KeyListener(){
public void keyPressed(KeyEvent e) {
System.out.println( "Da wurde was gedrückt" );
}
public void keyReleased(KeyEvent e) {
System.out.println( "Da wurde was losgelassen" );
}
public void keyTyped(KeyEvent e) {
System.out.println( "Da wurde was getippt" );
}
});
pack();
setLocationRelativeTo( null );
}
}
Ich hab schon ein bisschen mit dem Focus rumgespielt, aber es ist nichts brauchbares rausgekommen.
Gruss Beni