Como adicionar linhas em uma tabela usando AbstractTableModel

6 respostas
I

Comecei usar a pouco tempo o AbstractTableModel. Estou desenvolvendo uma tela da seguinte maneira: Ela eh um cadastro de pacientes, ai quando termina o cadastro vai pedir um numero de parcelas, ai tera uma tabela eu queria q apos fazer o cadastro fosse adiconado na tabela os meses de pagamento, sem precisar puxar do banco de dados. Eu sei quando usa o DefaultTableModel, usa o metodo addRow. Como faço para adicionar uma linha com o AbstractTableModel?

6 Respostas

drsmachado

E o que já fez?

I

eu fiz uma classe q extende da AbstracTableModel e implemento os metodos getRowCount, getColumnCount, getValueAt Ai no model da tabela eu puxo essa classe.

drsmachado

E cadê essa maldita classe?

I
public class CadTabela extends AbstractTableModel{

    private Vector<Vector<Object>> linhas = new Vector<Vector<Object>>();
    private Vector<String> colunas = new Vector<String>();
    
    public CadTabela(){
        init();    
    }
    
    public CadTabela(Vector<String> colunas){
        this.colunas = colunas;
    
    }
    
    private void init(){
        colunas.add("Mês");
        colunas.add("Numero da parcelas");
        colunas.add("Valor");
        
    
    }
    
    
    @Override
    public int getRowCount() {
        return linhas.size();
    }

    @Override
    public int getColumnCount() {
        return colunas.size();
    }

    @Override
    public Object getValueAt(int l, int c) {
        return linhas.get(l).get(c);
    }
    
    public String getColumnName(int pos){
        return colunas.get(pos);
    }
drsmachado

E onde você insere dados no Vector?
Você precisa criar um método void, que receba um Vector e que insira este objeto no Vector<Vector>.
Após isto, chame o método fireTableDataChanged();

public void addLinha(Vector<Object> vec({
    this.linhas.add(vet);
    fireTableDataChanged();
}
I

viu mais eu queria inserir uma data na tabela, e essa data nao esta no banco de dados. ai quando eu chamo o metodo addLinha (Que vc me ensinou) ele pede q eu passe um object.

Criado 1 de abril de 2013
Ultima resposta 1 de abr. de 2013
Respostas 6
Participantes 2