Boa noite rapazeada, estou estudando o preenchimento de JTable e travei em uma parte que diferente das outras eu nao consegui achar uma explicacao “compreensivel” nos videos, forums ou pdfs por ai…
enfim, este e o meu codigo:
public class ModeloTabela extends AbstractTableModel{
private ArrayList linhas = null; //Armazenamos as linhas em um ArrayList (uma colecao de objetos, dados).
private String[] colunas = null; //Variavel para armazenas as colunas, cada coluna fica em um vetor "colunas[0]..."
//Metodo Construtor que recebe uma lista de linhas e uma sequencia de colunas.
public ModeloTabela(ArrayList lin, String[] col){
setLinhas(lin); //Chama o "set" de linhas para atribuir a quantidade de linhas na variavel "linhas".
setColunas(col); //O mesmo de cima porem com a quantidade de colunas
}
//Pega a quantidade de linhas, a variavel esta privada entao somente esta classe tem acesso
//por meio desse metodo "get".
public ArrayList getLinhas() {
return linhas;
}
//Recebe a quantidade de linhas e "seta" na variavel String "linhas"
public void setLinhas(ArrayList linhas) {
this.linhas = linhas;
}
//Pega a quantidade de colunas que vai ser armazenada na variavel no "set" abaixo.
public String[] getColunas() {
return colunas;
}
//Recebe a quantidade de colunas e "seta" na variavel String "colunas"
public void setColunas(String[] colunas) {
this.colunas = colunas;
}
//Pega o tamanho das colunas, a variavel coluna e um vetor de String logo
//usando o length voce pega o tamanho do vetor e se cada espaco e uma coluna
//logo o tamanho dele e a quantidade de colunas.
@Override
public int getColumnCount(){
return colunas.length;
//contar o numero de colunas
//length = quantidade do numero de colunas
}
//Mesma logica das colunas acima, aqui eu pego o tamanho do vetor de linhas
//se tem 10 espacos, logo tem o tamanho 10, logo eu sei que tem 10 linhas :D
@Override
public int getRowCount(){
return linhas.size();
//contagem de quantas linhas tem no nosso array
}
//Pego o nome da coluna de acordo com o numero da coluna
@Override
public String getColumnName(int numCol){
return colunas[numCol];
//retorna o valor da coluna(logicamente seu nome).
//pegar o valor do nome da coluna, logo pegar o nome da coluna.
}
//Nao consigo entender o que realmente esta acontecendo nesse metodo
@Override
public Object getValueAt(int numLin, int numCol){
Object[] linha = (Object[])getLinhas().get(numLin); //Essa parte fica tudo muito confuso, linha recebe um objeto e depois me perco...
return linha[numCol];
}
}

? em que linha pra ser mais especifico.
