Adicionar um item da tabela em uma classe

Estou tentando adicionar um elemento da tabela quando selecionado em uma classe, mas da esse erro de incompatibilidade. Desculpa eu sou novo em Java, isso é no evento do botão “Salvar” pegaria o cliente selecionado na tabela e adicionaria em “Pedidos” onde tem uma declaração “public Clientes cliente”. Se precisar de mais alguma informação é só pedir

O método getSelectedRow retorna um int, no caso o índice da linha, o erro que está dando é que você tenta transformar esse int em um objecto Clientes.

Use o método getValueAt para pegar o objeto desejado, você precisa passar o índice da linha e da coluna.

Se for ajudar, aqui um código de exemplo:

public class Main {
  public static void main(String[] args) throws Exception {
    int rows = 3;
    int cols = 3;
    JTable table = new JTable(rows, cols);

    int rowIndex = 1;
    int vColIndex = 2;
    Object o = table.getValueAt(rowIndex, vColIndex);

  }
}

Peguei ele desse site.

1 curtida

Entendi, acho que estou conseguindo agora, mas e se eu quiser pegar somente a linha e todas as colunas?

Usa um for que vai incrementando uma variável para cada item da coluna.

public class Main {
  public static void main(String[] args) throws Exception {
    int rows = 3;
    int cols = 3;
    JTable table = new JTable(rows, cols);

    int rowIndex = 1;
    List<Object> objects = new ArrayList()<>;
    for (int x = 0; i < cols; i++) {
        objects.add(table.getValueAt(rowIndex, x));
    }
  }
}
1 curtida

Obrigado! Principalmente pela rapidez ^^