estou com problema na parte de jogar dados de uma tela para outra, eu não estou conseguindo jogar dados de uma tabela para um JTextField em outra tela, preciso selecionar o funcionario da empresa de uma tabela, e ao clicar no botão selecionar eu não consigo jogar o nome dele para outra tela, e antes de tentar jogar na outra tela, eu consigo imprimir a variavel num JOptionPane normalmente com nome do funcionário, se alguem souber ou já fez algo parecido e poder me ajudar eu ficaria agradecido.
Erro ao levar dados de uma tela para outra
6 Respostas
vou postar o codigo da ação do botão, preciso dos dados de uma tabela de 1 tela e jogar na outra tela.
public void actionPerformed(ActionEvent ae){
String nome="", id="";
int linha = pesqpessoa.getJtTabela().getSelectedRow();
nome = (String) pesqpessoa.getJtTabela().getValueAt(linha, 1);
id = (String) pesqpessoa.getJtTabela().getValueAt(linha, 0);
JOptionPane.showMessageDialog(null, "nome = " +nome + "\n id=" + id);
try{
documento.getJtfPessoa().setText(nome);
documento.getJtfID().setText(id);
}catch(Exception ex){
ex.printStackTrace();
}
}
}
esta dando erro dentro do try, o printStackTrace,
é esse:
java.lang.NullPointerException
at event.PesquisarPessoaOK.actionPerformed(PesquisarPessoaOK.java:36)
at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source)
at java.awt.Component.processMouseEvent(Unknown Source)
at javax.swing.JComponent.processMouseEvent(Unknown Source)
at java.awt.Component.processEvent(Unknown Source)
at java.awt.Container.processEvent(Unknown Source)
at java.awt.Component.dispatchEventImpl(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Window.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
at java.awt.EventQueue.access$000(Unknown Source)
at java.awt.EventQueue$1.run(Unknown Source)
at java.awt.EventQueue$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.AccessControlContext$1.doIntersectionPrivilege(Unknown Source)
at java.security.AccessControlContext$1.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue$2.run(Unknown Source)
at java.awt.EventQueue$2.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.AccessControlContext$1.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)
se alguem souber e puder me ajudar ficaria agredecido. muito obrigado.
Estou com um problema semelhante.
Quando clico em um botão, preciso pegar um objeto que está em outra classe, no caso é um valor…aqui nao está retornando nada =/
Oi,
Espero que ajude…http://www.guj.com.br/java/55710-jdialog-devolvendo-valor-pra-jinternalframe#292687
Boa noite pessoal.
Amigo, quando for colocar código, utiliza a tag Code para seu código ficar mais visível e ficar mais fácil de te ajudar.
Segundo, uma pergunta: Onde vc está criando seu objeto documento? Tem como postar? Ele é um objeto de qual classe? JFrame?
Até +!
é JFrame, ai dentro dela tenho dois JTextField que preciso jogar os dados de outra tela que tambem é da extends JFrame, e preciso jogar esses dados na tela anterior
Olá!
Amigo, basta tentar não pensar em JFrame comunicar com JFrame, mas objeto comunicando com objeto. Tudo em java é um objeto, inclusive os JFrames.
Tente também pensar em não “pegar o objeto de outra classe”, mas sim fazer com que esta outra classe repasse o objeto preenchido para frente!
Neste exemplo, em uma tela eu insiro o nome e endereço da pessoa, passo para outro JFrame, que exibirá na tela o nome e endereco recebido.
Classe Pessoa.java
public class Pessoa
{
private String nome;
private String endereco;
//getters and setters...
}
Na tela de cadastro, tenho dois JTextFields: txtNome e txtEndereco:
FrameCadastrar.java
public class FrameCadastrar extends javax.swing.JFrame
{
//Construtor
public FrameCadastrar()
{
initComponents();
}
public void transferirDadosJFrame()
{
//Cria-se um objeto pessoa.
Pessoa pessoa = new Pessoa();
//Configura os atributos nome e endereco deste objeto pessoa.
pessoa.setNome(txtNome.getText());
pessoa.setEndereco(txtEndereco.getText());
//Cria um objeto JFrame (FrameExibirDados) enviando o objeto pessoa para ele.
FrameExibirDados frameExibir = new FrameExibirDados(pessoa);
//Abre o novo Frame com os dados da pessoa e fecha o frame anterior
frameExibir.setVisible(true);
this.dispose();
}
}
Então vc poderia utilizar algum evento (clicar de um botão, por exemplo) para chamar o método transferirDadosJFrame, e este passaria o objeto pessoa para outro JFrame.
FrameExibirDados.java
public class FrameExibirDados extends javax.swing.JFrame
{
//Construtor
public FrameExibirDados(Pessoa pessoa)
{
initComponents();
//Aqui o novo JFrame recebe o objeto pessoa e preenche os JTextFields com os valores.
this.txtNome.setText(pessoa.getNome());
this.txtEndereco.setText(pessoa.getEndereco());
}
}
Espero ter ajudado!
Até +!