I have a JPanel
inside a JFrame
. I have registered a KeyListener
, based on which I want to update the JPanel
. The problem I am having is that I cannot get the focus on the JPanel
and therefore my KeyListener
won't work. I already know that the KeyListener
is functional because I registered it with the JFrame
and it worked fine. My code goes something like this at the moment:
myFrame.setFocusable(false);
myPanel.setFocusable(true);
myPanel.addKeyListener(myKL);
myFrame.add(myPanel);
Has anyone encountered a problem like this before? Is there something I am missing in regards to this?
P.S.: I do not have any components inside the JPanel
I just draw an Image on the background, so I need the focus to be on the JPanel itself and not on something inside it.
Although you're indicating that the panel can be focusable, the panel isn't asking for focus. Try using myPanel.requestFocus();
.