Dies ist im Konstruktor eines JPanel, aber es hat nichts gedruckt, wenn ich „h“ drücken. Wenn mehr Code benötigt wird, kann ich es bereitstellen. Vielen Dank!Java Swing Tastenbelegung
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 können Sie nur 'slide.setVisible (isHidden);' verwenden, können Sie 'getInputMap (JComponent.WHEN_IN_FOCUSED_WINDOW) 'verwenden, wenn ich nicht verwechsele oder wenn Vorfahr – nachokk
Ich bin mir nicht sicher, ob ich folge. slide.setVisible (true/false) funktioniert meines Wissens ziemlich gut. – Yesha
Sie können die if/else-Anweisung mit einer einzigen Zeile Code, die das gleiche tut. – camickr