Componentes JFrame em uma tabela

0 respostas
D

Boa tarde!
Gostaria que me ajudassem a resolver um problema, que sei que para vocês será bem simples! Tenho uma lista de dados ligados a registros dentro de um banco de dados mysql e quero lista-los todos dentro de uma tabela. Exemplo: um usuário ou cliente cadastrado que possui uma lista de telefones de contato. Preciso listar os dados destes clientes e a sua lista de números de contato em uma única linha da tabela e acredito que uma combobox seria o ideal.
Estou usando um modelo customizado para fazer isso e gostaria que me dessem alguma dica de como resolver isso.

Modelo Customizado de Tabela

public class ModeloTabela extends AbstractTableModel
{
//Atributos
private ArrayList linhas = null; //Quantidade de Linhas
private String[] colunas = null; //Quantidade de Colunas

//Construtor
public ModeloTabela(ArrayList lin, String[] col)
{
    setLinhas(lin);
    setColunas(col);
}

//Getters e Setters
public ArrayList getLinhas() {
    return linhas;
}

public void setLinhas(ArrayList linhas) {
    this.linhas = linhas;
}

public String[] getColunas() {
    return colunas;
}

public void setColunas(String[] colunas) {
    this.colunas = colunas;
}

//Conta as Colunas
public int getColumnCount()
{
   return this.colunas.length;
}

//Conta as Linhas
public int getRowCount()
{
    return this.linhas.size();
}

//Retorna o nome das colunas
public String getColumnName(int numCol)
{
    return this.colunas[numCol];
}

public Object getValueAt(int numLin, int numCol)
{
    Object[] linha = (Object[]) getLinhas().get(numLin);
    return linha[numCol];
}

}

Como é Preenchido

int i = 1;
        
        ArrayList dados = new ArrayList();
        
        ArrayList<Alunodados> dadosAluno = new ArrayList<>();
        NAluno nAluno = new NAluno();
        
        
        dadosAluno = nAluno.listarAluno(cbNomeGrupo.getSelectedItem().toString());
        
        String[] Colunas = new String[]{"ID","Nome", "Nascimento", "Sexo", "Data Teste", "Mediunidade", "Nº Colete", "Grupo"};
for(Alunodados A:dadosAluno)

{

String[] dataCadastro = A.getDataCadastro().toString().split("-");

String novaDataCadastro = dataCadastro[2] + “/” + dataCadastro[1] + “/” + dataCadastro[0];
String[] dataNascimento = A.getDataNascimento().toString().split("-");
            String novaDataNascimento = dataNascimento[2] + "/" + dataNascimento[1] + "/" + dataNascimento[0];
            
            dados.add(new Object[]{i, A.getNome(), novaDataNascimento, A.getSexo(), novaDataCadastro, A.getMediunidade(),                           A.getNColete(), A.getNomeGrupo()});
            i++;
        }
       
        ModeloTabela modelo = new ModeloTabela(dados, Colunas);

        tabelaAlunos.setModel(modelo);

Pensei também em colocar um botão com um link para uma outra página para que estivesse sendo exibido os dados de contato de forma separada.
Dá uma olhada aí e me dê uma dica de como resolver isso.
Desde já, muito obrigado!

Criado 18 de janeiro de 2014
Respostas 0
Participantes 1