Como eu posso colocar um botão para ser o default quando o usuário aperta enter?
Ex: ele coloca o login e a senha depois aperta enter.
Como eu posso colocar um botão para ser o default quando o usuário aperta enter?
Ex: ele coloca o login e a senha depois aperta enter.
Sinceramente nao conheço esse recurso… vou esperar posts aki tb…
Mas eu faço da seguinte forma nas minha aplicações:
Se eu tenho dois jTextFields, um para Login e outro para senha, eu coloco um evento de teclado neles e ai funciona blz.
Ou seja, qualquer dois jTextFields que estiver com o foco e for teclado o enter ja lança o evento como se tivesse clicado no ‘Botão’
Blz???
DefaultKeyboardFocusManager.getCurrentKeyboardFocusManager().addKeyEventDispatcher(new MyKeyEventDispatcher());
private class MyKeyEventDispatcher implements KeyEventDispatcher {
public boolean dispatchKeyEvent(KeyEvent arg0) {
int keycode = arg0.getKeyCode();
if (arg0.getID() == KeyEvent.KEY_PRESSED) {
if (keycode == KeyEvent.VK_ENTER) {
login(); //metodo para logar
}
}
return false; // se nao for enter continua a acao normalmente
}
}
jFrame.getRootPane().setDefaultButton(button);
Valeu galera!
coloquei um rootpane no qual tem os campos de login e senha, tipo como o ziegfried explica.
Então só quando ele está no campo de login ou de senha que ele verifica o enter. (Eu acho!)
JRootPane rp = new JRootPane();
rp.setLayout(null);
rp.setDefaultButton(btn_entrar);
rp.add(panelLoginSenha);
contentPanel.setBounds(0, 0, width, height);
contentPane.add(rp);