Selecionar Linha da Jtable e preencher JtextField de Outra JFrame (Resolvido)

4 respostas
C

Boa Tarde.

Estou fazendo um sistema de controle de produção leiteira e estou com uma duvida.
Tem uma tela que vou cadastrar a cotação do leite (CadastroCotacoesLeite) e fiz um botao que abre a tela de cadastro de Laticionio (ConsultaCliente), nessa tela contem apenas uma tabela com os ids e nome do laticinio, ao clicar em cima de algum deles gostaria que fosse preenchido 2 jtextfield da tela de cadastro da cotação do Leite (CadastroCotaçõesLeite).
Ele está pegando os valores (Fiz um println para teste está imprimindo os valores que preciso) porem ele não joga os valores na outra jframe.
Segue abaixo o codigo:

private void jTable1MouseClicked(java.awt.event.MouseEvent evt) {       
                              
    CadastroCotacoesLeite cad = new CadastroCotacoesLeite();

        if (evt.getClickCount() == 1) {
            Object obj = (jTable1.getValueAt(jTable1.getSelectedRow(), 0));  //coluna 0
            String Id = obj.toString();
            Object obj1 = (jTable1.getValueAt(jTable1.getSelectedRow(), 1));  //coluna 1
            String nome = obj1.toString();

            cad.CodLaticinio.setText(Id);//pego o valor da linha selecionada na coluna 0 e adiciono ao jtextfield CodLaticinio na Tela CadastroCotações  
            cad.Laticinio.setText(nome);// Nome do Laticinio
 
            
           dispose ();
        }
        
    }

Alguem pode me ajudar com a minha duvida, se estou fazendo do jeito correto … caso não, se tem outra forma.

Já está como public os jtextfields que preciso preencher…

4 Respostas

morcinek

Bom dia amigo, ao invés de jogar para outro frame, crie um JDialog, que fica bem mais fácil,

C

Bom dia.

Fiz com o JDialog, porem acontece a mesma situação. Fiz um debug ele está recebendo o valor, porem nao imprime dentro do jtextfield. Alguem tem alguma sugestão ?

C

Bom dia.

O problema parece que é que não está atualizando a Jframe que recebe os valores, fiz um teste abrindo só a janela que puxa o laticinio e ele abriu a tela da cotação informando oque eu precisava. Será que nao está atualizando a tela

Segue abaixo o meu codigo.

TELA DE CONSULTA

private void jTable1MouseClicked(java.awt.event.MouseEvent evt) {                                     

        if (evt.getClickCount() == 1) {
            Object obj = (jTable1.getValueAt(jTable1.getSelectedRow(), 0));  //coluna 0
            String Id = obj.toString();
            Object obj1 = (jTable1.getValueAt(jTable1.getSelectedRow(), 1));  //coluna 1
            String nome = obj1.toString();
            
            CadastroCotacoesLeite cad = new CadastroCotacoesLeite();
            
            cad.setJFrame1(this, Id.toString());
            cad.setVisible(true);
            
        }

    }

TELA DE CHAMA A CONSULTA / RECEBE

public void setJFrame1(ConsultaCliente ConCli, String txt){
        CodLaticinio.setText(txt);
        this.ConCli = ConCli;
    }

Alguem tem uma ideia ?

C

Consegui Resolver através do método, só fiz alguns ajustes e está ok Agora.

segue o codigo caso alguem precise.

////    ############################################################################
////            Recebe Laticinio
////    ############################################################################
    
 public void setJFrame1(ConsultaCliente ConCli, String Id){
        CodLaticinio.setText(Id);
        this.ConCli = ConCli;
    }
 
public void setJFrame2(ConsultaCliente ConCli,String nome){
        Laticinio.setText(nome);
        this.ConCli = ConCli;
    }

Onde eu busco o nome e o ID

private void jTable1MouseClicked(java.awt.event.MouseEvent evt) {                                     

        if (evt.getClickCount() == 1) {
            Object obj = (jTable1.getValueAt(jTable1.getSelectedRow(), 0));  //coluna 0
            String Id = obj.toString();
            Object obj1 = (jTable1.getValueAt(jTable1.getSelectedRow(), 1));  //coluna 1
            String nome = obj1.toString();
            
            CadastroCotacoesLeite cad = new CadastroCotacoesLeite();
            
            cad.setJFrame1(this, Id.toString());
            cad.setJFrame2(this, nome.toString());
            cad.setVisible(true);
            
        }

    }
Criado 8 de agosto de 2012
Ultima resposta 10 de ago. de 2012
Respostas 4
Participantes 2