Questo è nel costruttore di un JPanel ma non stampa nulla quando premo "h". Se è necessario più codice, posso fornirlo. Grazie!Java swinging keybinding
String hide = "hide";
this.getInputMap().put(KeyStroke.getKeyStroke('h'), hide);
this.getActionMap().put(hide, new AbstractAction() {
@Override
public void actionPerformed(ActionEvent e) {
System.out.println("HIDDEN");
if (isHidden){
slide.setVisible(true);
}else{
slide.setVisible(false);
}
}
});
BTW puoi usare solo 'slide.setVisible (isHidden);', puoi usare 'getInputMap (JComponent.WHEN_IN_FOCUSED_WINDOW) 'se non sbaglio o quando antenato – nachokk
non sono sicuro di seguirlo. slide.setVisible (true/false) funziona abbastanza bene per quanto ne so. – Yesha
L'istruzione if/else con una singola riga di codice può fare la stessa cosa. – camickr