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 ^^
