我有一个JTextArea,我想在按ALT键时触发一条消息。 这是与ALT不匹配的代码,我也不知道为什么。
JTextArea jtf1 = new JTextArea();
jtf1.getInputMap().put(KeyStroke.getKeyStroke(18, 0), "handleGS");
jtf1.getActionMap().put("handleGS", new AbstractAction() {
@Override
public void actionPerformed(java.awt.event.ActionEvent e) {
System.err.println("Found");
}
});
答案 0 :(得分:0)
ALT
键似乎是一个掩码,因此您必须将其用作修饰符。
我是这样工作的:
JTextArea jtf1 = new JTextArea();
jtf1.getInputMap().put(
KeyStroke.getKeyStroke(KeyEvent.VK_ALT, InputEvent.ALT_DOWN_MASK),
"handleGS"
);
jtf1.getActionMap().put("handleGS", new AbstractAction() {
public void actionPerformed(java.awt.event.ActionEvent e) {
System.err.println("Found");
}
});