[RESOLVIDO]Sem explicação - Pelo menos pra mim

3 respostas
Micke

Bom pessoal, ta acontecendo o seguinte… estou fazendo o select do BD e jogo esse resultset na tabela, ele monta a tabela normalmente, só que não mostra o nome do dados que estao nas linas do BD…

Tipo, ele monta a tabela com a coluna do BD certo, e a quantidade de linhas que tem no BD tambem so que nao carregas os dados…

segue o código:

//Dentro do construtor da classe eu faço o select
public CadFuncECS(Conexao con)
{
    this.con = con;
    initComponents();

    try
    {
         stm = con.getStatement();
         rs = stm.executeQuery("select * from xxxxxx);
         inserirDados(rs);
     }
     catch(SQLException e)
     {
          e.printStackTrace();
     }
}


public void inserirDados( ResultSet rs ) 
{
                
        try 
       {
            
            ResultSetMetaData metaData = rs.getMetaData();
            
            // nome das colunhas
            String[] colunas = new String[ metaData.getColumnCount() ];
            
            for ( int i = 0; i < colunas.length; i++ ) 
           {
                
                colunas[ i ] = metaData.getColumnName( i + 1 );

            }
        
            // cria um modelo
            DefaultTableModel modelo = new DefaultTableModel( colunas, 0 );

            // preenche o modelo
            while ( rs.next() ) 
           {
                
                // uma linha
                String[] linha = new String[ colunas.length ];
                
                // adiciona valores na linha
                for ( int i = 0; i < colunas.length; i++ ) 
               {

                    linha[ i ] = rs.getString( i + 1 );

                }
                
                // adiciona a linha
                modelo.addRow( linha );

            }

            // seta o modelo na tabela
            tbFuncECS.setModel( modelo );
        
        } 
        catch ( SQLException exc ) 
       {
            
            System.out.println( exc );
            
        }
            
    }

O ruim que ele não esta dando erro nenhum!!! faz o metodo normalmente!!!

3 Respostas

tnaires

Olá
Tente chamar o método fireTableDataChanged() do seu objeto modelo após adicionar as linhas.
Abraços

Micke

Olá tnaires,

Fiz oque me falou e também não deu certo :cry:

Abraço!!!

Micke

Descobri o problema… estava no JTable que eu avia criando, eu tinha mechido em seu model pelo layout do netbeans, deley o JTable e coloquei outra JTable sem mexer em nada e funcionou!!!

E tnaires esse método que falou para envocar da certo sim… vlw!!

Criado 18 de fevereiro de 2008
Ultima resposta 18 de fev. de 2008
Respostas 3
Participantes 2