Quantcast
Channel: Programação - GUJ
Viewing all articles
Browse latest Browse all 33093

Abrindo formulário de pesquisa em um InternalFrame

$
0
0

@root360 escreveu:

Boa tarde galera, estou estudando java tenho muitas dificuldades, tenho um formulário de cadastro de produto (InternalFrame) e um botão Pesquisar que abre um InternalFrame está abrindo normal e pesquisando o produto sem problema, minha dificuldade é a seguinte quando eu pesquiso ele joga os resultado da na tabela, queria fazer nesse formulário de pesquisa tem um botão (Ok) queria saber como faz para quando o usuário selecionar o registro na tabela e clicar no botão (Ok) ele joga os registros no Formulário original já com os campos carregados.

Meu ModeloTabela

package br.com.sis.model;

import java.util.ArrayList;
import java.util.List;
import javax.swing.table.AbstractTableModel;

public class ModelTableProduto extends AbstractTableModel {

    private final int COLUNA_ID = 0;
    private final int COLUNA_PRODUTO = 1;
    private final int COLUNA_QUANTIDADE = 2;
    private final int COLUNA_PRECO = 3;

    private List<ModelProduto> produtos;

    public ModelTableProduto() {
        produtos = new ArrayList();
    }

    public ModelTableProduto(List<ModelProduto> lista) {
        this();
        produtos.addAll(lista);
    }

    public int getRowCount() {
        return produtos.size();

    }

    public int getColumnCount() {
        return 4;
    }

    @Override
    public Class getColumnClass(int columnIndex) {
        if (columnIndex == COLUNA_ID) {
            return String.class;
        } else if (columnIndex == COLUNA_PRODUTO) {
            return String.class;
        } else if (columnIndex == COLUNA_QUANTIDADE) {
        } else if (columnIndex == COLUNA_PRECO) {
        }
        return String.class;
    }

    @Override
    public String getColumnName(int column) {
        if (column == COLUNA_ID) {

            return "ID";

        } else if (column == COLUNA_PRODUTO) {
            return "PRODUTO";
        } else if (column == COLUNA_QUANTIDADE) {
            return "QTD";
        } else if (column == COLUNA_PRECO) {
            return "Preço";
        }
        return "";
    }

    @Override
    public Object getValueAt(int rowIndex, int columnIndex) {
        ModelProduto p = produtos.get(rowIndex);
        if (columnIndex == COLUNA_ID) {
            return p.getId();
        } else if (columnIndex == COLUNA_PRODUTO) {

            return p.getNomepruduto();
        } else if (columnIndex == COLUNA_QUANTIDADE) {
            return p.getQuantidade();
        } else if (columnIndex == COLUNA_PRECO) {
            return p.getPreco();
        }
        return "";
    }

    @Override
    public boolean isCellEditable(int rowIndex, int columnIndex) {
        return false;
    }

    @Override
    public void setValueAt(Object aValue, int rowIndex, int columnIndex) {
        ModelProduto p = produtos.get(rowIndex);
        if (columnIndex == COLUNA_ID) {
        } else if (columnIndex == COLUNA_PRODUTO) {
            p.setNomepruduto(aValue.toString());

        } else if (columnIndex == COLUNA_QUANTIDADE) {
            p.setQuantidade(aValue.toString());
        } else if (columnIndex == COLUNA_PRECO) {

        }
        fireTableCellUpdated(rowIndex, columnIndex);
    }

}

Modelo Produto com get e set

package br.com.sis.model;

public class ModelProduto {

    private int id;
    private String nomepruduto;
    private String quantidade;

    public double getPreco() {
        return preco;
    }

    public void setPreco(double preco) {
        this.preco = preco;
    }
    private double preco;

    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    public String getNomepruduto() {
        return nomepruduto;
    }

    public void setNomepruduto(String nomepruduto) {
        this.nomepruduto = nomepruduto;
    }

    public String getQuantidade() {
        return quantidade;
    }

    public void setQuantidade(String quantidade) {
        this.quantidade = quantidade;
    }
}

ProdutoDAO

package br.com.sis.controller;

import br.com.sis.conexao.ConnectionFactory;
import br.com.sis.model.ModelProduto;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
import javax.swing.JOptionPane;

public class ProdutoDAO {

    public List<ModelProduto> buscarProduto(String p) {
        try {
            Connection conn = ConnectionFactory.getConnection();
            PreparedStatement pst = conn.prepareStatement("select * from produto where produto ilike '%" + p + "%'");
            ResultSet rs = pst.executeQuery();

            List<ModelProduto> result = new ArrayList<ModelProduto>();

            while (rs.next()) {
                ModelProduto t = new ModelProduto();
                t.setId(rs.getInt("id"));
                t.setNomepruduto(rs.getString("produto"));
                t.setQuantidade(rs.getString("quantidade"));
                t.setPreco(rs.getDouble("preco"));
                result.add(t);
            }
            return result;
        } catch (SQLException e) {
            JOptionPane.showMessageDialog(null, "Erro ao buscar os Produtos" + e.getMessage());
            return null;
        }
    }

    public void SalvarRegistro(ModelProduto modelo) {
        try {

            Connection conn = ConnectionFactory.getConnection();
            String sql = "insert into produto(produto,quantidade,preco) values(?,?,?)";
            PreparedStatement pst = conn.prepareStatement(sql);
            pst.setString(1, modelo.getNomepruduto());
            pst.setString(2, modelo.getQuantidade());
            pst.setDouble(3, modelo.getPreco());
            pst.execute();
            JOptionPane.showMessageDialog(null, "Salvo com sucesso");

        } catch (Exception erro) {
            JOptionPane.showMessageDialog(null, "Erro ao salvar o registro" + erro.getMessage());

        }

    }

    public void AtualizarRegistro(ModelProduto modelo) {
        try {
            Connection conn = ConnectionFactory.getConnection();
            String sql = "update produto set id=?, produto=?, quantidade=?, preco=? where id=?";
            PreparedStatement pst = conn.prepareStatement(sql);
            pst.setInt(1, modelo.getId());
            pst.setString(2, modelo.getNomepruduto());
            pst.setString(3, modelo.getQuantidade());
            pst.setDouble(4,modelo.getPreco());
            pst.setInt(5, modelo.getId());
            pst.execute();
            JOptionPane.showMessageDialog(null, "Alterado com sucesso");

        } catch (Exception e) {

            JOptionPane.showMessageDialog(null, "Erro ao salvar o registro" + e.getMessage());
        }
    }
    
    public void ExcluirRegistro(ModelProduto modelo){
        try {
            Connection conn = ConnectionFactory.getConnection();
            String sql="delete from produto where produto=?";
            PreparedStatement pst = conn.prepareStatement(sql);
            pst.setString(1,modelo.getNomepruduto());
            pst.execute();
            
            JOptionPane.showMessageDialog(null, "Excluido com sucesso \n");
            
            
        } catch (Exception e) {
            JOptionPane.showMessageDialog(null, "Erro na Exclusão: \n" + e.getMessage());
        }
    }
}

Mensagens: 3

Participantes: 2

Ler tópico completo


Viewing all articles
Browse latest Browse all 33093


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>