J'ai un JPanel
dans un JFrame
. J'ai enregistré un KeyListener
, basé sur lequel je veux mettre à jour le JPanel
. Le problème que je suis est que je ne peux pas obtenir le focus sur le JPanel
et par conséquent mon KeyListener
ne fonctionnera pas. Je sais déjà que le KeyListener
est fonctionnel parce que je l'ai enregistré avec le JFrame
et il a bien fonctionné. Mon code va quelque chose comme ça en ce moment:Obtention de focus sur un JPanel
myFrame.setFocusable(false);
myPanel.setFocusable(true);
myPanel.addKeyListener(myKL);
myFrame.add(myPanel);
Quelqu'un at-il déjà rencontré un problème comme celui-ci? Y a-t-il quelque chose qui me manque à cet égard?
P.S .: Je n'ai aucun composant à l'intérieur du JPanel
Je dessine juste une image sur le fond, ainsi j'ai besoin de l'accent soit sur le JPanel lui-même et pas sur quelque chose à l'intérieur.
Hmm, avec l'ajout myPanel.requestFocus() cela fonctionne pour moi. Quelle version de Java utilisez-vous? –
Peut-être publier un SSCCE (simple exemple compilable autonome) qui reproduit cela. Cela donnera aux autres quelque chose à travailler pour aider. J'ai également remarqué un problème en le réduisant au minimum, parfois je suis capable de trouver la solution moi-même. – broschb