您不应将KeyListener用于这种类型的交互。而是使用键绑定,您可以在Java教程中了解这些键绑定。然后,您可以使用InputEvent掩码来表示何时不赞成使用各种修饰键。例如:
// Component that you want listening to your keyJComponent component = ...;component.getInputMap().put(KeyStroke.getKeyStroke(KeyEvent.VK_SPACE, java.awt.event.InputEvent.CTRL_DOWN_MASK), "actionMapKey");component.getActionMap().put("actionMapKey", someAction);
有关获取KeyStroke时可以使用的不同代码,请参见javadoc
中的KeyStroke。这些修饰符可以进行“或”运算以表示键的各种组合。如
KeyStroke.getKeyStroke(KeyEvent.VK_SPACE, java.awt.event.InputEvent.CTRL_DOWN_MASK | java.awt.event.InputEvent.SHIFT_DOWN_MASK)
表示何时
Ctrl + Shift按下琴键。
编辑: 正如已经指出的那样,这不能回答您的问题,而应作为一些好的建议。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)