我使用的是按键侦听器和交错式窗格,每当尝试使用键盘上的左右键时,它只会在选项卡之间切换。这真的很烦人,因为我实际上在其中一个选项卡中使用了箭头键。有什么办法可以关闭Java中的“切换选项卡”按键?

先感谢您

KeyListen keylistener = new KeyListen();
    MainGUI.MainTabbedPane.addKeyListener(keylistener);
    MainGUI.MainTabbedPane.getInputMap(JComponent.WHEN_IN_FOCUSED_WINDOW).put(KeyStroke.getKeyStroke("LEFT"), "none");
    MainGUI.MainTabbedPane.getInputMap(JComponent.WHEN_IN_FOCUSED_WINDOW).put(KeyStroke.getKeyStroke("RIGHT"), "none");

最佳答案

是的,您必须取消注册键绑定,您可以进行如下操作

tabComponent.getInputMap(JComponent.WHEN_FOCUSED).put(KeyStroke.getKeyStroke("LEFT"), "none");
tabComponent.getInputMap(JComponent.WHEN_FOCUSED).put(KeyStroke.getKeyStroke("RIGHT"), "none");


您可能想看看这个How to use KeyBindings。不建议使用KeyListeners而不是使用KeyBindings,因为首先您必须要有焦点,而且keylisteners用于所有键,而keybinding是用于特定键。

09-28 11:56