Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

deamdornelles

addKeyListener

Recommended Posts

Boa tarde

 

Eu não tenho muita experiência com Java, por isso estou encontrando algumas dificuldades em um exercício para a faculdade. É o seguinte, eu preciso criar uma janela onde o usuário informará o nome em um JTextField e o sobrenome em outro JTextField, daí eu preciso juntar os dois e mostrar em um JLabel.

 

Aqui está o código:

 

import java.awt.*;
import javax.swing.*;

public class exercicio02 extends JFrame {
JTextField nome;
JTextField sobrenome;
JLabel concatenado;
public exercicio02 () {
	setTitle ("Exercício 02");
	setVisible (true);
	setDefaultCloseOperation (JFrame.EXIT_ON_CLOSE);
	setLayout (new GridLayout (3,1));
	nome = new JTextField (20);
	sobrenome = new JTextField (20);
	concatenado = new JLabel ();		
	add (nome);
	add (sobrenome);
	add (concatenado);
	pack ();
}
public static void main (String args []) {
	exercicio02 janela = new exercicio02 ();
	String nome = janela.nome.getText ();
	String sobrenome = janela.sobrenome.getText ();
	janela.concatenado.setText (nome + " " + sobrenome);
}
}

 

Eu imagino que em teoria esteja certo, o problema é que eu quero que ele funcione dinamicamente, ou seja, à medida que o usuário for digitando alguma coisa já apareceria no label. De acordo com os slides do meu professor é preciso utilizar listeners, mas eu não entendi muito bem.

 

Alguém poderia me ajudar? Obrigado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Obrigado Vergil, mas eu já tinha conseguido. Se alguém tiver interesse, aqui está o código completo:

 

import java.awt.*;
import javax.swing.*;
import java.awt.event.KeyAdapter;
import java.awt.event.KeyEvent;

public class exercicio02 extends JFrame {
JTextField nome;
JTextField sobrenome;
JLabel concatenado;
String textonome, textosobrenome;
public exercicio02 () {
	setTitle ("Exercício 02");
	setVisible (true);
	setDefaultCloseOperation (JFrame.EXIT_ON_CLOSE);
	setLayout (new GridLayout (3,1));
	nome = new JTextField (20);
	sobrenome = new JTextField (20);
	concatenado = new JLabel ();		
	add (nome);
	add (sobrenome);
	add (concatenado);
	pack ();
	nome.addKeyListener (new KeyAdapter () {
		public void keyReleased (KeyEvent ev) {
			textonome = nome.getText ();
			concatenado.setText (textonome + " " + textosobrenome);
		}
	});
	sobrenome.addKeyListener (new KeyAdapter () {
		public void keyReleased (KeyEvent ev) {	
			textosobrenome = sobrenome.getText ();
			concatenado.setText (textonome + " " + textosobrenome);
		}
	});
}
public static void main (String args []) {
	exercicio02 janela = new exercicio02 ();		
}
}

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.