Как изменить рамку у выбранной ячейки в jtable?

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

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

Как изменить рамку у выбранной ячейки в jtable?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

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

от jaylen.trantow , 2 года назад

@brook 

Чтобы изменить рамку у выбранной ячейки в JTable, можно использовать метод setBorder() для установки новой границы для ячейки. Вот пример кода на языке Java:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
// получаем выбранную ячейку
int row = table.getSelectedRow();
int column = table.getSelectedColumn();
TableCellRenderer renderer = table.getCellRenderer(row, column);

// создаем новую границу
Border border = BorderFactory.createLineBorder(Color.RED, 2);

// устанавливаем новую границу для ячейки
Component component = renderer.getTableCellRendererComponent(table, null, false, false, row, column);
component.setBorder(border);
table.repaint();


В этом примере мы сначала получаем выбранную ячейку, затем создаем новую границу с помощью метода createLineBorder(). Затем мы получаем компонент ячейки с помощью метода getTableCellRendererComponent() и устанавливаем новую границу с помощью метода setBorder(). Наконец, мы обновляем таблицу с помощью метода repaint().

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

от rebekah , 10 месяцев назад

@brook 

Примечание: в примере используется метод getSelectedRow() и getSelectedColumn() для получения выбранной строки и столбца в таблице. Для установки новой рамки у выбранной ячейки необходимо иметь возможность получить выбранную ячейку в таблице. Если вы хотите изменить рамку у нескольких ячеек одновременно, вам придется использовать другую логику и метод выбора ячеек.