0
以下代码是应该使当在一定的JTextField(称为时间步长)被按压选项卡中的程序检测并在一个TextArea显示消息(称为textAreaInsructions),但它似乎没有工作。任何人都可以告诉我为什么?显示信息时标签在TextField中presed在Java
timeStep.setFocusTraversalKeys(
KeyboardFocusManager.FORWARD_TRAVERSAL_KEYS, Collections.EMPTY_SET);
timeStep.addKeyListener(new KeyAdapter() {
public void keyPressed(KeyEvent evt) {
if(evt.getKeyCode() == KeyEvent.VK_TAB){
instruction = "Enter a real number time step";
textAreaInstructions.setText(instruction);
/* If you want to change the focus to the next component */
//nextJComponent.grabFocus();
}
}
});
我曾想过尝试你的第一个建议,但我想知道如何使压片来改变显示的指令的唯一途径。 –
Java有一个叫做Javadoc的奇妙事物:http://docs.oracle.com/javase/7/docs/api/。用它。 – Durandal
JComponent.registerKeyboardAction现在已经过时,但它似乎让我走上了正轨。我现在需要弄清楚如何使用getInputMap()和getActionMap()。 getInputMap()的参数是(KeyStroke,Object),而getActionMap()的参数是(Object,Action)。任何帮助非常感谢。 –