1. java
  2. android
  3. c#
  4. .net
  5. javascript
  6. php
  7. jquery
  8. html
  9. sql

Pesquisa em tela diferente com passagem de parâmetro

Olá Boa Noite tenho uma dúvida acredito que seja simples mas não estou encontrando uma saída.

Vamos lá tenho 2 janelas em pacotes diferente tipo um cadastro/alteração e uma outra de pesquisa que lista os cadastrados no banco de dados.

Só que ao pesquisar queria passar como parâmetro o código para que eu possa retornar os dados para alteração.

Tenho a classe que chama TelaUsuarios.java que vou trazer os dados para edição. Ao clicar em um botão de pesquisa chamo a tela telaUsuariosPesquisa.java

 private void BtPesqUsuarioActionPerformed(java.awt.event.ActionEvent evt) {                                              

        PessoaFuncionarioControle pf = new PessoaFuncionarioControle();
        try {
            List<Pessoa> listaDeUsuario = pf.buscarLista(
                    TxPesquisaUsuario.getText());
            DefaultTableModel model
                    = (DefaultTableModel) TbPesqUsuario.getModel();
            for (int i = model.getRowCount() - 1; i >= 0; i--) {
                model.removeRow(i);
            }
            if (listaDeUsuario != null) {
                for (int i = 0; i < listaDeUsuario.size(); i++) {
                    Pessoa pessoa = listaDeUsuario.get(i);
                    String[] p = new String[]{
                        String.valueOf(pessoa.getCodpessoa()),
                        pessoa.getNompessoa(),
                        pessoa.getTippessoa()};
                    model.insertRow(i, p);
                }
            }
            TbPesqUsuario.setModel(model);
        } catch (Exception e) {
            JOptionPane.showMessageDialog(this,
                    "Não foi possivel consultar os usuários!\n\n"
                    + e.getLocalizedMessage());
        }

    }

Depois eu seleciono o valor na table e clico em botão Selecionar mas ai que não consigo levar estes dados para a outra tela.

 private void BtSelecionarPesqUsuarioActionPerformed(java.awt.event.ActionEvent evt) {                                                        

        int selecionada = TbPesqUsuario.getSelectedRow();
        if (selecionada == -1) {
            return; //Não tem nada selecionado
        }

        codigo = Integer.parseInt(TbPesqUsuario.getValueAt(selecionada, 0).toString());
        System.out.println("Codigo selecionado é: " + codigo);



        PessoaFuncionarioControle pf = new PessoaFuncionarioControle();

        try {
            Pessoa listaDeUsuario = pf.buscarPessoaPeloId(codigo);


            System.out.println("Codigo"+listaDeUsuario.getCodpessoa());
            System.out.println("Codigo"+listaDeUsuario.getPfjpessoa());
            System.out.println("Codigo"+listaDeUsuario.getDatNacpessoa());

            TelaUsuarios tu = new TelaUsuarios();



        } catch (Exception e) {
            JOptionPane.showMessageDialog(this,
                    "Não foi possivel consultar os usuários!\n\n"
                    + e.getLocalizedMessage());
        }

        setVisible(false);
        TelaUsuarios x = new TelaUsuarios();
        x.setVisible(true);


    }

Espero que tenham entendido.

Obrigado

  1. Você vai ver essas setas em qualquer página de pergunta. Com elas, você pode dizer se uma pergunta ou uma resposta foram relevantes ou não.
  2. Edite sua pergunta ou resposta caso queira alterar ou adicionar detalhes.
  3. Caso haja alguma dúvida sobre a pergunta, adicione um comentário. O espaço de respostas deve ser utilizado apenas para responder a pergunta.
  4. Se o autor da pergunta marcar uma resposta como solucionada, esta marca aparecerá.
  5. Clique aqui para mais detalhes sobre o funcionamento do GUJ!

2 respostas

Não é a resposta que estava procurando? Procure outras perguntas com as tags java swing ou faça a sua própria pergunta.