我正在尝试在Swing组件中听一下斜杠字符的击键。 注册
component.getInputMap().put(KeyStroke.getKeyStroke(KeyEvent.VK_SLASH, 0), myAction);
使用英文键盘布局时(斜线是单击键)。但是,当使用德语键盘布局时,通过shift-7输入斜杠并且obove代码不起作用!
现在,正确听取斜杠字符的正确方法是什么,而不是密钥的组合?
答案 0 :(得分:4)
您当前的KeyStroke会侦听keyPressed事件。
也许你可以使用:
KeyStroke slash = KeyStroke.getKeyStroke("typed /"); // or
KeyStroke slash = KeyStroke.getKeyStroke('/');
这应该监听keyTyped事件,该事件应该适用于实际生成可以添加到文本字段的类型字符的KeyStrokes。