Acionar botao com a tecla enter

e ai galera, blz?

estou com um duvida aqui, ja pesquisei bastante e não consigo resolve-la…desculpa incomodar!

eu preciso que ao teclar a tecla “enter”, o botão que esta selecionado seja acionado!

Exemplo:

Quando eu coloco a senha do meu sistema é só pressionar enter que ele já entra no sistema , eu não preciso ter o trabalho de pegar o mouse e ir clicar ou apertar espaço no botão.

Como de costume de todos, o certo era acionar o botão “logar” com a tecla “enter”.

Por isso peço ajuda a vocês, quem souber um método pra isso funcionar, eu agradeço desde já!

Muito obrigado…

luiswellington,

Seu projeto é web ou desktop ?

Se for um botão num formulário Swing, está explicado aqui:
http://docs.oracle.com/javase/tutorial/uiswing/components/button.html#jbutton

[quote=luiswellington]e ai galera, blz?

estou com um duvida aqui, ja pesquisei bastante e não consigo resolve-la…desculpa incomodar!

eu preciso que ao teclar a tecla “enter”, o botão que esta selecionado seja acionado!

Exemplo:

Quando eu coloco a senha do meu sistema é só pressionar enter que ele já entra no sistema , eu não preciso ter o trabalho de pegar o mouse e ir clicar ou apertar espaço no botão.

Como de costume de todos, o certo era acionar o botão “logar” com a tecla “enter”.

Por isso peço ajuda a vocês, quem souber um método pra isso funcionar, eu agradeço desde já!

Muito obrigado…[/quote]

Olá, vai ai um exemplo

btnSalvar = new JButton("Salvar", new ImageIcon(getClass().getResource("/Images/apply-32.png")));
		btnSalvar.setMnemonic(KeyEvent.VK_S);
		btnSalvar.addActionListener(new ActionListener() {
			
			@Override
			public void actionPerformed(ActionEvent arg0) {
				salvar();
			}
		});
		btnSalvar.addKeyListener(new KeyAdapter() {
			public void keyPressed(KeyEvent e) {
				if (e.getKeyCode() == KeyEvent.VK_ENTER) {
					btnSalvar.doClick();
				}
			}
		});

O ideal é definir um “botão padrão” para ser acionado quando enter for teclado, conforme mostrado no link enviado pelo Roger:

getRootPane().setDefaultButton(botao);

Mas se quiser que o enter ative o botão que esteja com o foco, ajuste a seguinte propriedade no UIManager:

UIManager.put("Button.defaultButtonFollowsFocus", Boolean.TRUE);

Para uma tela de login, a primeira opção se encaixa como uma luva.

1 curtida

Caso seja Web, faça algo do tipo:

<input type="button" onKeyPress="event.keycode==13?//faça algo://faça outra coisa">

meu projeto é desktop

eu usei ide, feito no netbeans.

sou novato em java…não to conseguindo resolver o problema…aonde eu coloco o codigo ?

alguem poderia me explicar mais completo, desculpa a ignorancia.

Eric eu preciso acionar o botao que estiver com o foco como você disse, como eu faço pra programa aquele codigo na UImanager? eu coloquei ele aqui no botao mas nao funcionou

Você só precisa setar a propriedade uma vez, antes de criar qualquer janela. Pode ser no método main, por exemplo.