Problema com o Header da Jtable(Resolvido)

2 respostas
W

Boa Noite!! entao estou fazendo um sistema p/ um trabalho da faculdade, e nunca tinha utilizado uma JTable, ae fui atras de informações de como utilizá-la, achei um tutorial onde tinha alguns exemplos e tal... ae segui os exemplos que achei, porém eu desenho a JTable no Netbeans e dou um "setModel" em tempo de execução, mas quando eu dou esse "set" ele perde o valor do Header que criei no netbeans e substitui por "A" e "B", pesquisei sobre isso aqui no GUJ, mas os posts que encontrei eram sobre JTables que ñ mostram o header, onde o pessoal dava como solução colocar o JTable em uma JScrollPane, então eu fiz isso p/ testar, mas ñ deu resultado tambem!! o código de exemplo que encontrei é o seguinte:

Código da classe que cria o meu modelo p/ a JTable

public class SimpleTableModel extends AbstractTableModel{
        private ArrayList linhas = null;
        private String[] colunas = null;

        public SimpleTableModel(ArrayList dados, String[] colunas){
            setLinhas(dados);
            setColunas(colunas);
        }

        public String[] getColunas(){return colunas;}
        public ArrayList getLinhas(){return linhas;}
        public void setColunas(String[] strings){colunas = strings;}
        public void setLinhas(ArrayList list){linhas = list;}

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

        public int getColumnCount() {
            return getColunas().length;
        }

        public Object getValueAt(int rowIndex, int columnIndex) {
            String [] linha = (String []) getLinhas().get(rowIndex);
            return linha[columnIndex];
        }
    }
    
    public String retornaCod(){
        Object codigo = jtPesq.getValueAt(jtPesq.getSelectedRow(), 0);
        
        return (String) codigo;
    }
Para dar o "setmodel" eu faço o seguinte código:
String[] colunas = new String[]{"Código", "Nome"};

SimpleTableModel modelo = new SimpleTableModel(autor.consultar(), colunas);
            
jtPesq.setModel(modelo);

Obs: o meu método "autor.consultar()" retorna um ArrayList

Desde já, muito Obrigado!!

2 Respostas

ViniGodoy

Faltou implementar o método getColumnName() no seu TableModel.

Veja um exemplo completo aqui:
http://www.guj.com.br/posts/list/98452.java#530523

W

Opa é isso mesmo!! vlw hein cara!!! até +… fica na paz!!

Criado 22 de outubro de 2008
Ultima resposta 23 de out. de 2008
Respostas 2
Participantes 2