如何为 Java Swing JRadioButton 禁用箭头键导航?

How To Disable Arrow Key Navigation For Java Swing JRadioButton?

我的 Java Swing 应用程序中有一些 JRadioButtons。在我 select 一个按钮之后,单击箭头键将浏览所有按钮,但我需要将箭头键用于其他目的,如何禁用默认行为以便按下箭头键不会浏览单选按钮?

JRadioButton Button1=new JRadioButton("Button1");
JRadioButton Button2=new JRadioButton("Button2");
JRadioButton Button3=new JRadioButton("Button3");

JRadioButton 添加到 ButtonGroup 时,将为左、右、上和下箭头键添加“键绑定”:

您可以使用如下代码删除绑定:

InputMap im = button1.getInputMap(JComponent.WHEN_ANCESTOR_OF_FOCUSED_COMPONENT);
im.put(KeyStroke.getKeyStroke("RIGHT"), "none");
im.put(KeyStroke.getKeyStroke("LEFT"), "none");

阅读 Key Bindings 上的 Swing 教程部分了解更多信息。