Я столкнулся с проблемой, когда у меня есть JTable, размеченный с помощью менеджера GridBagLayout, и число строк в таблице не фиксировано.Я намерен заполнить пространство, назначенное таблице, всеми ее ячейками, однако между последней строкой таблицы и следующим компонентом в контейнере имеется большое пустое (и белое) пространство.
В качестве потенциальногоРешение, мне интересно, могу ли я отрегулировать высоту ячеек, чтобы заполнить пространство, назначенное для таблицы.Так, например, если есть три строки, то высота пространства должна быть поровну разделена на три строки.Если есть только один ряд, то этот ряд должен занимать все доступное пространство.
Любые предложения приветствуются, и, если есть лучший способ добиться желаемого эффекта, пожалуйста, просветите меня.Спасибо.
PS Я использую JTable внутри JPanel вместо JScrollPane, если это имеет какое-либо значение.
Редактировать: Итак, я попробовал следующий код, который, безусловно, регулирует высотустрок в зависимости от количества имеющихся строк, но после последней строки и перед следующим компонентом все еще остается пустой пробел.Хотите знать, почему?
// re-size the header and row height to fill the whole tPanel
int panelHeight = tPanel.getHeight();
int desiredRowHeight = panelHeight / (numOfRows + 1);
friendsInfo.getTableHeader().setPreferredSize(new Dimension(table.getColumnModel().getTotalColumnWidth(), desiredRowHeight));
table.setRowHeight(desiredRowHeight);