Как сделать выделение строки в jtable?

Пользователь

от chloe.keebler , в категории: Java , 2 года назад

Как сделать выделение строки в jtable?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от yasmine , 2 года назад

@chloe.keebler 

Для выделения строки в JTable вам нужно установить выделенную строку с помощью метода setRowSelectionInterval() класса JTable.


Пример кода для выделения строки в JTable:

1
2
3
4
// Получаем выбранную строку
int selectedRow = table.getSelectedRow();
// Устанавливаем выделенную строку с помощью метода setRowSelectionInterval()
table.setRowSelectionInterval(selectedRow, selectedRow);


Вы также можете установить выделение нескольких строк, используя метод setRowSelectionInterval() с различными значениями индексов строк.

1
2
// Установка выделения нескольких строк
table.setRowSelectionInterval(0, 2); // Выделяет строки с 0 по 2


Кроме того, вы можете использовать метод setSelectionMode() класса JTable для установки режима выделения строк:

1
2
3
// Установка режима выделения строк
table.setSelectionMode(ListSelectionModel.SINGLE_SELECTION); // Выбор только одной строки
table.setSelectionMode(ListSelectionModel.MULTIPLE_INTERVAL_SELECTION); // Выбор нескольких строк


Надеюсь, это поможет!

Пользователь

от jaylen.trantow , 10 месяцев назад

@chloe.keebler 

Дополнительно можно использовать Listenner на событие клика по строке, чтобы при клике строка выделялась автоматически:


1 2 3 4 5 6 7 8 9


// Создаем слушатель на клик по строке table.addMouseListener(new MouseAdapter() { @Override public void mouseClicked(MouseEvent e) { // Получаем индекс выделенной строки int row = table.getSelectedRow(); // Устанавливаем выделенную строку с помощью метода setRowSelectionInterval() table.setRowSelectionInterval(row, row); } });