GUJ Discussões   :   últimos tópicos   |   categorias   |   GUJ Respostas

Passar um valor inteiro de um JTextField de uma tela para um outro JTextField de outra tela?


#1

Olá Pessoal!!!
Gostaria de um auxílio.
Eu tenho uma tela(cadastroUsuario) onde o usuário digite um valor inteiro em um JTextFieldValor1. Ele aciona um ComboBox que o direciona para outra tela. Nesta tela(cadastroResponsavel) tem um outro FtextFieldValor2 que recebe o valor do JTextFieldValor1. Como faço isso?


#2

Desculpe, estou começando meus estudos há pouco tempo. Poderria explicar melhor!!!


#3

Oi amigo!!! Obrigado pela força !! Consegui compreender todo o código!!
Só que ainda não deu certo!!!!

//na classe principal eu tenho uma opcao no combo Box que me direciona para outra, então fiz o seguinte:

if (S==2){
// escreve a opção selecionada pelo usuário
jTextFieldNomeResp.setText("opção: " + SIM);
// guarda o valor do campo digitado em um objeto para passá-lo para a outra tela
cadastro.setTextField(jTextFieldPrec_CP.getText());
jTextFieldPrec_CP.requestFocus();
// abre a nova tela
CadastroResponsavel frame=new CadastroResponsavel();
frame.show();
Entaõ deveria já aparecer na outra tela o campo digitado anteriormente

// na outra classe
public void setTextField(String text) {
jTextFieldPrecCpResp.setText(text);
}

Um grande abraço
couto.junior


#4

Passa como argumento da chamada ao método.

ex:

// Principal
OutraClasse classe = new OutraClasse();
    classe.metodoSecundario( JTextFieldValor1.getText() );
// Secundário
metodoSecundario( String conteudoDoTextField ) {
}

Abraços.


#5

Ok.
Vou te mandar um exemplo bem simples.
Da uma olhada e ve se voce consegue entender o que eu fiz.

Caso não entenda alguma parte desse exemplo, poste aqui para podermos tentar ajudar.

Não prossiga nos estudos antes de entender isso ok?!

Abraços.

import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class Classe1 extends JFrame {
	// Declarando as variaveis
	private JPanel panel;
	private JButton button;
	private JTextField field;
                // Criando uma instancia da Classe2
	static Classe2 classe2 = new Classe2();
	// Método construtor
	private Classe1() {
		// Chamando o construtor da superclasse
		super();
		// Configurações de frame
		setDefaultCloseOperation( EXIT_ON_CLOSE );
		setSize( 300, 100 );
		setLocation( 100, 100 );
		setTitle( "Classe1" );
		panel = new JPanel();
		button = new JButton( "Enviar para outro frame" );
                               // Criando a ação do botão
		button.addActionListener(
			new ActionListener() {
				public void actionPerformed( ActionEvent e ) {
                // chamando o método setTextField() do objeto Classe2
                // ele será responsável pela atualização do textfield
	        classe2.setTextField( field.getText() );
					field.setText( "" );
					field.requestFocus();
				}
			}
		);
		field = new JTextField( 20 );
		panel.add( field );
		panel.add( button );
		getContentPane().add( BorderLayout.CENTER, panel );
		setVisible( true );
	}
	public static void main( String [] args ) {
		Classe1 classe1 = new Classe1();
	}
}
class Classe2 extends JFrame {
	// Declarando as variaveis
	private JPanel panel2;
	private JTextField field2;
	// Método construtor
	public Classe2() {
		// Chamando o construtor da superclasse
		super();
		// Configurações de frame
		setDefaultCloseOperation( EXIT_ON_CLOSE );
		setSize( 300, 80 );
		setLocation( 100, 200 );
		setTitle( "Classe2" );
		panel2 = new JPanel();
		field2 = new JTextField( 20 );
		panel2.add( field2 );
		getContentPane().add( BorderLayout.CENTER, panel2 );
		setVisible( true );
	}
	public void setTextField( String text ) {
		field2.setText( text );
	}
}

#6