Modelo de tabela

4 respostas
S

Ola pessoas tenho uma tabela em uma telinha e uso o abstracttablemodel,
preciso pegar as linhas selecionadas e mandar para uma outra jtable, entao capturei as linhas selecionadas

agora como passo para a outra jtable, precisava de exemplo pq pesquisei muito e n consigo entender a logica disso =\ vlw.

4 Respostas

mauricioadl

vc vai pegar o model da usa outra jtable e chamar o metodo de adicionar itens de acordo com sua implementacao.

S

mas veja n tenho método de inserir veja

package br.com.carteirinha.model;

//imports
import br.com.carteirinha.bean.CustomerBean;
import java.text.SimpleDateFormat;
import java.util.List;
import javax.swing.table.AbstractTableModel;

public class CardTableModel extends AbstractTableModel {

    private List dados = null;
    SimpleDateFormat fmt = new SimpleDateFormat("dd/MM/yyyy");

    public CardTableModel(List dados) {
        this.dados = dados;
    }

    @Override
    public int getColumnCount() {
        return 5; 
    }

    @Override
    public int getRowCount() {
        if (this.dados == null) {
            return 0;
        } else {
            return this.dados.size();
        }
    }

    @Override
    public Object getValueAt(int row, int column) {
        CustomerBean cl = (CustomerBean) this.dados.get(row);

        Object retorno = null;
        if (column == 0) {
            retorno = cl.getId();
        } else if (column == 1) {
            retorno = cl.getName();
        } else if (column == 2) {
            retorno = cl.getDateI();
        } else if (column == 3) {
            retorno = cl.getDataN();
        } else if (column == 4) {
            retorno = cl.getEmpresa();
        } 
        return retorno;
    }

    @Override
    public String getColumnName(int column) {
        String columnName = "";
        if (column == 0) {
            columnName = "Código";
        } else if (column == 1) {
            columnName = "Nome";
        } else if (column == 2) {
            columnName = "Data de Inc";
        } else if (column == 3) {
            columnName = "Dt Nascimento";
        } else if (column == 4) {
            columnName = "Empresa";
        }
        return columnName;
    }

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

e no metodo estou usando isso mas n ta indo veja:

if (jt_customer.getSelectedRowCount() != 0) {
            int colunaSelecionada = 0 ;
            int[] selection = jt_customer.getSelectedRows();
            for (int i = 0; i < selection.length; i++) {

                int k = selection[i]-i;
                Object valueLinha = jt_customer.getValueAt(k, colunaSelecionada); 
                System.out.println(valueLinha);
            }
        }

a meses tento entender esses modelo de tabela mas n vai to quase voltando para o default mesmo bem mais easy

mauricioadl

basta vc criar um metodo que insira os valores no seu objeto:
private List dados = null;

so isso! xD

Criado 18 de janeiro de 2012
Ultima resposta 18 de jan. de 2012
Respostas 4
Participantes 2