簡體   English   中英

Java swing鍵綁定

[英]Java swing keybinding

這是在JPanel的構造函數中,但是當我按“h”時它不會打印任何內容。 如果需要更多代碼,我可以提供。 謝謝!

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);
            }
        }
    });
this.getInputMap()....

您正在嘗試將綁定添加到默認的InputMap,即組件具有焦點時的InputMap。 默認情況下,JPanel沒有焦點。 您應該嘗試使用getInputMap(int)方法使用其他InputMaps之一。 或者您需要使面板具有可聚焦性並使其具有焦點。

閱讀有關如何使用鍵綁定的Swing教程, 獲取有關用於指定所需InputMap的正確變量的更多信息。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM