Центрируйте ячейки JTable к середине JTable

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

Я использую таблицу для рисования прямоугольников в таблице, но при изменении размера ячейки остаются выровненными по левому краю. Когда таблица хорошо вписывается в ячейки, это не проблема. Но когда я изменяю размер окна (и таблицы с ним), это неправильно:

хорошо выглядитнеправильно

У меня вопрос, можно ли заставить клетки появляться в середине таблицы? Я полагаю, я мог бы использовать клеи по бокам (это BorderLayout), но я бы предпочел такой подход.

1 ответ

Решение

Так как ваш TableCellRenderer просто раскрашивает цветные блоки, вы можете поставить стол в FlowLayout и переопределить getPreferredScrollableViewportSize(),

private static final int WIDE = 10;
private static final int HIGH = 20;
private static final int SIZE = 50;
...
@Override
public Dimension getPreferredScrollableViewportSize() {
    return new Dimension(WIDE * SIZE, HIGH * SIZE);
}
Другие вопросы по тегам