Как выровнять по центру JScrollPane в JPanel по центру? - PullRequest
0 голосов
/ 04 января 2012

У меня есть JPanel с GridLayout, состоящим из 1 строки и 2 столбцов.

Внутри первого столбца у меня есть JPanel, состоящий из Jpanel и Jtree.Во втором столбце у меня есть JScrollPane, состоящий из JTable.

Как я могу выровнять JscrollPAne по центру, чтобы он был выровнен по центру?в настоящее время он отображается сверху, а не в центре.

Вот изображение: enter image description here

Ответы [ 2 ]

2 голосов
/ 04 января 2012

Вы для вашего JScrollPane во 2-м столбце, вам нужно будет обернуть его JPanel. Затем вам нужно будет установить менеджер раскладки для нового JPanel. Я бы, вероятно, использовал GridBagLayout, поскольку он дает вам более точное управление, и вы можете достичь желаемого с ним вертикального центрирования.

Вам нужно будет добавить подделку JPanel в оболочку JPanel, чтобы заполнить пробел, который вы ищете.

Короче, у вас будет: JPanel с GridLayout (1 строка, 2 столбца)

Колонка 1:

  • JTree

Колонка 2:

  • JPanel с GridBagLayout, который тогда содержит:
    • JPanel с GridBagConstraints (для пробелов)
    • JScrollPane с GridBagConstraints

Возможно, вам придется добавить еще JPanel ниже JScrollPane, если вы хотите, чтобы там тоже были пробелы. Я не уверен на 100%, что вы ищете. С помощью GridBagConstraints вы можете точно управлять макетом.

1 голос
/ 04 января 2012

Существует менеджер раскладок, который спасет вас :) Во втором столбце используйте панель с GridBagLayout и вставьте JScrollPane в панель, вы можете указать положение компонентов на панели с помощью GridBagConstraints.

См. Это для получения дополнительной информации: Как использовать GridBagLayout

...