Remove JTable's Enter Key behavior
When you press the Enter
key while in a JTable, you'll notice how the row selection changes to the next row or
to the first row if the former row selected was the last row in the model. You can change this playing with the
traversal key policy, but this is quite complicated.
The easy way is to consume the event if the enter key has been pressed. You can accomplish this doing the following:
JTable jMyTable = new JTable();
jMyTable.addKeyListener(new java.awt.event.KeyAdapter() {
public void keyPressed(java.awt.event.KeyEvent evt) {
jMyTableKeyPressed(evt);
}
});
private void jMyTableKeyPressed(java.awt.event.KeyEvent evt) {
if(evt.getKeyCode() == evt.VK_ENTER){
evt.consume();
}
}
};
It's very important to consume the event during the keyPressed event and not during the other possible keyEvents not doing so will mean that you will consume the event once it's been triggered, so the Enter key will continue advancing one row.
Comments in "Remove JTable's Enter Key behavior"