TableModel - Aplicar o modelo na Jtable

4 respostas
L

Pessoal;

Tenho meu modelo de Jtable:

import Objetos.Cliente;
import java.util.List;
import javax.swing.table.AbstractTableModel;


public class TableModelCliente extends AbstractTableModel {

     private static final int ColCodigo = 0;
     private static final int ColNome = 1;
     private static final int ColCpfCnpj = 2;
     private static final int ColTelefone = 3;

     private List<Cliente> clientes;

     public TableModelCliente(final List<Cliente> clientes) {
         this.clientes = clientes;

     }

    public int getRowCount() {
        return clientes.size();
    }

    public int getColumnCount() {
        return 4;
    }

    @Override
     public String getColumnName(final int col){
        switch (col){
            case ColCodigo:
                return "Código Cliente";

            case ColNome:
                return "Nome";

            case ColCpfCnpj:
                return "CPF/CNPJ";

            case ColTelefone:
                return "Telefone";

            default:
                return "";
        }

     }

    public Object getValueAt(final int rowIndex, final int columnIndex) {

        if(rowIndex > -1 && rowIndex < clientes.size()){
            return clientes.get(rowIndex);
        }
        return null;
    }

}

mas como eu aplico esse modelo na minha Jtable que está em outra classe.

Obs: estou utilizando o NetBeans.

4 Respostas

pvrsouza

Ante de qualquer coisa de uma olhada nisso aqui para ver se consegue extrair alguma coisa:

Abracos!

L

então:

tentei fazer assim na minha VIEW:

MinhaTableModel modelo = new MinhaTableModel();
MinhaTable.setModel(modelo);

Mas está com erro.

Alguma dica??

Eric_Yuzo

Qual erro aparece?

L

então cara, modifiquei algumas coisas e consegui.

Minha table está exibindo os dados do meu BD, só que agora eu quero filtrar esses dados através de um TextField.

Como posso fazer isso??

eu tenho esse método na minha classe DAO:

public void ConsultaCliente(String nome) throws SQLException{

        conexao = new Conexao();
        Connection conn = conexao.getConnection();
        stmt = conn.createStatement();

        try{
             if(conn != null){
                java.sql.Statement query = conn.createStatement();
                ResultSet rs = query.executeQuery("Select nome_cliente, cpf_cnpj_cliente, endereco_cliente, telefone_cliente"
                    + " from cliente where nome_cliente like'%"+nome+"%'");
             }
        }catch(SQLException ex){
            System.out.println("SQLException: " + ex.getMessage());
            System.out.println("SQLState: " + ex.getSQLState());
            System.out.println("VendorError: " + ex.getErrorCode());

        }

    }

e o ResultSet que retorna todos os dados do BD na classe VIEW:

private ResultSet getResults() throws SQLException {
        ResultSet rs = null;
        String TodosCliente = "Select nome_cliente, cpf_cnpj_cliente, endereco_cliente, telefone_cliente"
                    + " from cliente";

        try{
            rs=stmt.executeQuery (TodosCliente);
        }catch (SQLException e){}

            return rs;

    }

Agradeço pela ajuda.

Criado 20 de fevereiro de 2011
Ultima resposta 27 de fev. de 2011
Respostas 4
Participantes 3