Swing Focus bekommen

Hatschi

Aktives Mitglied
Java:
package snake.gui;

import java.awt.BorderLayout;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
import javax.swing.JSlider;
import javax.swing.event.ChangeEvent;
import javax.swing.event.ChangeListener;

import toolkit.gui.BasicFrame;


public class MainWnd extends BasicFrame implements KeyListener, ChangeListener {
    private Canvas canvas;
    private int dt = 75;
    
    
    public MainWnd() {
        super();
        
        init();
        addSlider();
        addCanvas();
    }
    
    
    @Override
    public void keyPressed(KeyEvent e) {
        if(canvas!=null) canvas.keyPressend(e.getKeyCode());
    }


    @Override
    public void keyReleased(KeyEvent e) {}


    @Override
    public void keyTyped(KeyEvent e) {}
    
    
    @Override
    protected void windowClosing() {
        System.out.println("developed by Nis Meinert");
    }
    
    
    @Override
    public void stateChanged(ChangeEvent e) {
        int dt = ((JSlider)e.getSource()).getValue();
        dt += 25;
    }
    
    
    private void init() {
        setTitle("Snake");
        setLayout(new BorderLayout());
        setSize(300, 300);
        centerOnScreen();
        
        addKeyListener(this);
    }
    
        
    private void addCanvas() {
        canvas = new Canvas();
        add(BorderLayout.CENTER, canvas);
    }
    
    
    private void addSlider() {
        JSlider slider = new JSlider(0, 100, 50);
        slider.addChangeListener(this);
        slider.setPaintTicks(true);
        slider.setMinorTickSpacing(10);
        add(BorderLayout.SOUTH, slider);
    }
}

Wenn ich das ganze ausführe, dann habe ich ein JFrame mit einem JPanel (heißt hier Canvas) und nen JSlider. Nun hat das ganze nen Keylistener. Der funktioniert aber irgendwie nicht mehr seitdem der JSlider da ist, der JSlider scheint irgendwie auch anfocussiert zu sein, der hat zumindestens so nen gestrichelt Rand drum herum.
a.) wie repariere ich den Keylistener?
b.) wie kriege ich diesen Focus vom JSlider runter?
 

Hatschi

Aktives Mitglied
mh, das will irgendwie alles nicht :-(

das ist aber ja auch schon irgenwie nicht richtig, dass der JSlider so anfocusiert ist, oder?
 
S

SlaterB

Gast
was auch immer richtig ist oder nicht, bei mir funktioniert es einigermaßen,
wobei es requestFocusInWindow() lauten muss

im Programm unten ist standardmäßig ist der JSlider fokussiert,
kann man aber auch auf das ContentPane-Panel oder das JFrame selber umstellen

Java:
public class TestGUI  extends JFrame {
    public TestGUI() {
        KeyListener k = new KeyAdapter()  {
                public void keyTyped(KeyEvent e) {
                    System.out.println("source: " + e.getSource().getClass().getSimpleName());
                }
            };
        getContentPane().addKeyListener(k);
        addKeyListener(k);

        JSlider sl = new JSlider();
        sl.addKeyListener(k);
        add(sl, BorderLayout.SOUTH);

        setSize(200, 200);
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        setVisible(true);
        getContentPane().requestFocusInWindow();
        // requestFocusInWindow();
    }

    public static void main(String[] args) {
        new TestGUI();
    }
}
 

Hatschi

Aktives Mitglied
mh, das funktioniert jetzt, aber ist trotzdem komisch, das der JSlider so anfocusiert wird (also spätstens wenn ich drauf klicke) das macht der doch in anderen Anwendungen auch nicht, sieht voll noobich aus :-(
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
T disabled Checkbox soll trotzdem Focus bekommen AWT, Swing, JavaFX & SWT 9
E Focus auf titledborder AWT, Swing, JavaFX & SWT 8
B JavaFX TextInputDialog: Focus auf Eingabefeldinhalt setzen und nach OK Inhalt leeren AWT, Swing, JavaFX & SWT 5
A JPanel austauschen und Focus geben AWT, Swing, JavaFX & SWT 3
xYurisha Gui Focus von JTextField weglenken AWT, Swing, JavaFX & SWT 6
O Focus zwischen Chat und Spiel wechselns AWT, Swing, JavaFX & SWT 3
T bekomme keinen Focus auf JTextField AWT, Swing, JavaFX & SWT 3
fLooojava JButton [Focus) AWT, Swing, JavaFX & SWT 4
K JavaFX Focus Listener für gesamte Scene AWT, Swing, JavaFX & SWT 1
C JOptionPane.showConfirmDialog() -> Focus auf NEIN -> Enter gibt YES_OPTION zurück AWT, Swing, JavaFX & SWT 6
T SWT Button soll nur sichbar sein,wenn im Textfeld der Focus ist AWT, Swing, JavaFX & SWT 4
B Swing JTextfeld bekommt nur jedes Zweite mal Focus AWT, Swing, JavaFX & SWT 11
E JTextPane Focus AWT, Swing, JavaFX & SWT 1
D ComboBoxCellEditor Refresh beim Focus AWT, Swing, JavaFX & SWT 4
A Swing Focus der Radio Buttons + text bleibt gleich und gleichzeitige ausgabe zweier Objekte in 1. Fenster AWT, Swing, JavaFX & SWT 3
A Focus Problem AWT, Swing, JavaFX & SWT 4
I focus an ein jdialog geben AWT, Swing, JavaFX & SWT 3
B JInternalFrame Focus setzten geht nicht AWT, Swing, JavaFX & SWT 2
A Swing Focus auf gemalte Component AWT, Swing, JavaFX & SWT 5
H Swing JTextField in JWindow, JWindow bekommt focus zurück? AWT, Swing, JavaFX & SWT 9
M Swing Focus für Buttons deaktiviert --> keine Reaktion mehr auf Tastendrücke AWT, Swing, JavaFX & SWT 5
M focus subFrame AWT, Swing, JavaFX & SWT 3
G Force Focus für JButton AWT, Swing, JavaFX & SWT 2
lumo SWT Composite Focus AWT, Swing, JavaFX & SWT 2
C Swing Focus Management AWT, Swing, JavaFX & SWT 3
lumo SWT Table Selection Color +Focus Out AWT, Swing, JavaFX & SWT 14
D Swing keine Tabellen Zeilen ohne Focus AWT, Swing, JavaFX & SWT 7
Screen Focus Problem , KeyListener, TextField , Key AWT, Swing, JavaFX & SWT 4
L AWT Focus auf Fenster setzen AWT, Swing, JavaFX & SWT 4
H warum kann ich das focus event nicht abfangen ? AWT, Swing, JavaFX & SWT 5
L Swing Input Focus eines JTextFields in einer JList AWT, Swing, JavaFX & SWT 2
A Focus in JTable Cell AWT, Swing, JavaFX & SWT 3
A Focus für JApplet AWT, Swing, JavaFX & SWT 7
R Focus ermitteln AWT, Swing, JavaFX & SWT 2
C JTable Focus Handling AWT, Swing, JavaFX & SWT 2
Nitram Swing Focus im JFrame AWT, Swing, JavaFX & SWT 10
I Swing Focus Listener bei PComboBox von pswing Erweiterung AWT, Swing, JavaFX & SWT 7
V Swing Problem mit Focus setzen AWT, Swing, JavaFX & SWT 7
thE_29 Swing JTabbedPane Focus von Komponenten außerhalb AWT, Swing, JavaFX & SWT 10
B JTable getselectedrow liefert -1 wenn Focus verloren AWT, Swing, JavaFX & SWT 4
S Versuch den Focus zu klauen detektieren? AWT, Swing, JavaFX & SWT 14
SebSnake JFrame "Focus" erzwingen (wie JOptionPane) AWT, Swing, JavaFX & SWT 3
V JTabbedPane - keine "Focus"-Box auf selektiertem T AWT, Swing, JavaFX & SWT 2
L Focus für KeyListener auf verschiedene Panels AWT, Swing, JavaFX & SWT 2
O Focus im GBL steuern. AWT, Swing, JavaFX & SWT 3
K Focus an das JPanel übergeben AWT, Swing, JavaFX & SWT 2
K Focus-Problem AWT, Swing, JavaFX & SWT 9
O TextBoxen Focus über Pfeiltasten steuern AWT, Swing, JavaFX & SWT 3
G Problene mt Focus unter Swing AWT, Swing, JavaFX & SWT 7
G JTable und Focus AWT, Swing, JavaFX & SWT 30
D Beim Starten ein JTextfield Focus geben AWT, Swing, JavaFX & SWT 7
J JTextPane bekommt keinen Focus! AWT, Swing, JavaFX & SWT 3
P TextFeld Focus entfernen AWT, Swing, JavaFX & SWT 2
F Problem mit Actions, TextComponents und Focus AWT, Swing, JavaFX & SWT 2
K Focus mit Mouseclick auf JPanel setzen AWT, Swing, JavaFX & SWT 4
D Focus auf JPanel setzen AWT, Swing, JavaFX & SWT 2
B JTable - Focus - TabTaste AWT, Swing, JavaFX & SWT 2
D Focus in bestimmter Celle in JTable AWT, Swing, JavaFX & SWT 3
B Komponente in JTable bekommt keinen Focus AWT, Swing, JavaFX & SWT 3
M Focus beim öffnen eines neuen JFrames AWT, Swing, JavaFX & SWT 6
O JTextField- Selection / Focus bei nicht editierbaren Feldern AWT, Swing, JavaFX & SWT 2
J Focus auf JFrame AWT, Swing, JavaFX & SWT 3
B Focus für Textfeld AWT, Swing, JavaFX & SWT 5
B im JTree Focus setzen und navigieren AWT, Swing, JavaFX & SWT 3
B JInternalFrame in den Vordergrund rücken + Focus AWT, Swing, JavaFX & SWT 15
D JTable: Focus auf Zelle markiert ihren Text zum editieren AWT, Swing, JavaFX & SWT 2
C Komponente mit Focus bevor JButton-Klick merken. AWT, Swing, JavaFX & SWT 6
L Focus setzen AWT, Swing, JavaFX & SWT 3
G JTabbedPane, Focus, ChangeListener AWT, Swing, JavaFX & SWT 1
B Focus in JOptionPane AWT, Swing, JavaFX & SWT 2
J Focus-Problem bei Vollbildmodus AWT, Swing, JavaFX & SWT 7
A Combobox Focus-Events, Tab in Tabelle AWT, Swing, JavaFX & SWT 7
F Fenster in den Vordergrund aber nicht im Focus AWT, Swing, JavaFX & SWT 21
O Abfrage ob eine bstimmte Komponente den Focus hat AWT, Swing, JavaFX & SWT 4
T JTable Focus auf Zelle setzen AWT, Swing, JavaFX & SWT 3
R Focus durch "tabben" von JTable Zelle auf andere K AWT, Swing, JavaFX & SWT 8
R Focus speeren AWT, Swing, JavaFX & SWT 2
K JList - merkwürdiges Verhalten bei Leertaste (unter Focus) AWT, Swing, JavaFX & SWT 7
W Components Focus mit TAB-Taste VERTIKAL bewegen AWT, Swing, JavaFX & SWT 4
V JTextField Focus Cursor setzen AWT, Swing, JavaFX & SWT 2
D jcolorchooser - lost focus AWT, Swing, JavaFX & SWT 2
R Focus auf bereits geöffnetes Fenster setzen AWT, Swing, JavaFX & SWT 9
O Welche Möglichkeit zum Focus setzen! AWT, Swing, JavaFX & SWT 2
R JMenu copy Focus-Problem AWT, Swing, JavaFX & SWT 2
M Focus einstellen AWT, Swing, JavaFX & SWT 3
G Focus so setzen, daß in einer jTextArea der Cursor blinkt AWT, Swing, JavaFX & SWT 7
G JTable: Rahmen bei Focus um Zelle AWT, Swing, JavaFX & SWT 2
thE_29 Modaler Dialog - close on not focus AWT, Swing, JavaFX & SWT 3
P Focus auf JFrame AWT, Swing, JavaFX & SWT 5
G JOptionPane verliert Focus AWT, Swing, JavaFX & SWT 3
A JTree Problem mit Focus bzw. Selection AWT, Swing, JavaFX & SWT 5
C Focus setzen AWT, Swing, JavaFX & SWT 2
G JTree Focus setzen AWT, Swing, JavaFX & SWT 2
F HILFE!!! Focus-Probleme bei unterschiedlichen Panel's AWT, Swing, JavaFX & SWT 3
Mausposition relativ zu JFrame bekommen AWT, Swing, JavaFX & SWT 6
K Wie kann ich noch den scale bekommen, außer mit getScaleX oder getScaleY? AWT, Swing, JavaFX & SWT 1
L JavaFX SpaceFX zum Laufen bekommen AWT, Swing, JavaFX & SWT 16
B AWT Bot um Daten auf Website einzugeben und die Antwort zu bekommen AWT, Swing, JavaFX & SWT 2
DaCrazyJavaExpert Swing Extern den Text eines nicht fetsgelegten Buttons bekommen. AWT, Swing, JavaFX & SWT 12
R JavaFX Wert einer ChoiceBox bekommen ohne Lambdas AWT, Swing, JavaFX & SWT 11

Ähnliche Java Themen

Neue Themen


Oben