Ho un JPanel
all'interno di un JFrame
. Ho registrato uno KeyListener
, in base al quale voglio aggiornare lo JPanel
. Il problema che sto avendo è che non riesco a concentrarmi sullo JPanel
e quindi il mio KeyListener
non funzionerà. So già che il KeyListener
è funzionale perché l'ho registrato con lo JFrame
e ha funzionato bene. Il mio codice è simile al seguente:Ottenere focus su un JPanel
myFrame.setFocusable(false);
myPanel.setFocusable(true);
myPanel.addKeyListener(myKL);
myFrame.add(myPanel);
Qualcuno ha riscontrato un problema come questo prima? C'è qualcosa che mi manca riguardo a questo?
P.S .: Non ho alcun componente all'interno dello JPanel
Ho appena disegnato un'immagine sullo sfondo, quindi ho bisogno che lo stato attivo sia sullo JPanel stesso e non su qualcosa al suo interno.
Hmm, con l'aggiunta di myPanel.requestFocus() questo funziona per me. Quale versione di Java stai usando? –
Forse postare un SSCCE (semplice esempio compilabile autonomo) che riproduce questo. Ciò darà agli altri qualcosa su cui lavorare per aiutare. Ho anche notato un problema restringendolo al più piccolo ambito, a volte sono in grado di trovare la soluzione da solo. – broschb