I need to set focus on class which extends JPanel.
Focus should be set by default in constructor, and i dont know how to do it.
package ui;
import java.awt.Color;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
import javax.swing.JFrame;
import javax.swing.JPanel;
import net.miginfocom.swing.MigLayout;
@SuppressWarnings("serial")
public class AboutAuthor extends JPanel {
private Frame frame;
public AboutAuthor(Frame aframe) {
this.frame = aframe;
setFocusable(true);
addKeyListener(keylistener);
MigLayout layout = new MigLayout("gap 20px 15px");
setLayout(layout);
setBackground(Color.BLACK);
ShadowLabel mainmenu = new ShadowLabel("Main Menu");
add(mainmenu, "wrap");
setVisible(true);
}
KeyListener keylistener = new KeyListener() {
public void keyPressed(KeyEvent e) {
char key = e.getKeyChar();
int keycode = e.getKeyCode();
if (keycode == 65) {
frame.showsplashpanel();
}
System.out.println(key + " | code: " + keycode);
}
public void keyReleased(KeyEvent e) {
}
public void keyTyped(KeyEvent e) {
}
};
}