Ola,
Tenho o metodo abaixo que eu chamo para todos os componentes da tela, para poder pular de campo com o ENTER:
public static void addEnterToTraversalKeyStrokes(Component comp) {
int forward = KeyboardFocusManager.FORWARD_TRAVERSAL_KEYS;
Set forwardKeys = comp.getFocusTraversalKeys(forward);
Set newForwardKeys = new HashSet(forwardKeys);
newForwardKeys.add(KeyStroke.getKeyStroke("ENTER"));
comp.setFocusTraversalKeys(forward, newForwardKeys);
}
Ele funciona bem, com o mesmo comportamento do TAB, exceto quando existe um JButton apos um JTextField/JComboBox/etc. Eu setei o JButton com o setFocusable(false). Com o TAB, funciona bem, pois ele nao passa pelo JButton. Contudo, com o ENTER nao funciona. Ele fica travado no componente previo ao JButton e nao vai pra frente. O que esta faltando para controlar melhor isso?