2017-02-07 5 views
-1

Это на самом деле вопрос о this. Как изменить размер данных сейчас? Я использовал это, я смог изменить размер моего JPanel, но я не могу найти, как изменить размер таблицы или прокрутки. У меня 10 столбцов, и таблица остается одного размера.Resize JTable/Scrollpane

Заранее спасибо

+0

Переопределение 'getPreferredScrollableViewportSize()', для [например] (http://stackoverflow.com/search?tab=votes&q=%5bswing%5d%20%5bjtable%5d%20getPreferredScrollableViewportSize). – trashgod

ответ

1

Я был в состоянии изменять размер JPanel, но я не могу найти как изменить размер таблицы или ScrollPane.

Проблема в том, что JPanel использует FlowLayout. FlowLayout будет учитывать предпочтительный размер любого компонента, добавленного в панель. Таким образом, в примере кода таблица отображается по умолчанию по умолчанию.

Несколько решений:

  1. Там нет необходимости в панели. Просто добавьте scrollpane прямо в фрейм. При изменении размера кадра таблица будет расти/уменьшаться.
  2. Измените диспетчер компоновки панели на тот, который позволит компонентам, добавленным к нему, расти, чтобы заполнить доступное пространство. Снова таблица будет расти/уменьшаться по мере необходимости.
  3. Переопределить метод getPreferredScrollableViewportSize(...)JTable. Это изменит предпочтительный размер таблицы по умолчанию. Таблица может увеличиваться/уменьшаться в зависимости от используемого менеджера компоновки.