jTextField ENTER ? :(

5 respostas
jhosepholiveira

galerinha como faço pra poder quando num jTextField eu apertar enter ele executar o mesmo evendo de algum botão por ex?

5 Respostas

gqferreira

Use o KeyListener

seuCampo.addActionListener(new ActionListener() {
	public void actionPerformed(ActionEvent evt) {
			//sua programacao			
	}
});

Você pode também pesquisar sobre como pegar o botão pressionado dentro do evento.

jhosepholiveira

vlw cara, resolveu, mas só rolou no segundo enter, não funcionou de primeira, sempre que eh executado só funciona depois do segundo enter!!

jurunaloco

seuCampo.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt) {

jButton1ActionPerformed(null);

 
}

});

?

W

Não entendi muito bem o seu problema, mas vê se isso seria a solução…

private JTextField getSeuTextField() {
		if (seuTextField == null) {
			seuTextField = new JTextField();
			seuTextField.setBounds(new Rectangle(242, 30, 58, 20));
			seuTextField.addKeyListener(new java.awt.event.KeyAdapter() {
				public void keyReleased(java.awt.event.KeyEvent e) {
					if(e.getKeyChar() == '\n'){
						btnOk.doClick();
					}
				}
			});
		}
		return seuTextField;
	}
Thiago_Luis

Fala cara, blza?

O que eu costumo fazer é adicionar o JTextField ao ouvinte de ação e deixar o actionPerformed() verificar qual foi o componente acionado (Faço isso quando possuo um JButton com a mesma característica)

public void actionPerformed(ActionEvent evt){ if(evt.getSource() == jTextField || evt.getSource() == jButton){ // faz algo } }
Mais ou menos assim.

Abraço

Criado 18 de junho de 2009
Ultima resposta 19 de jun. de 2009
Respostas 5
Participantes 5