У меня есть JScrollPane и JPanel.
JScrollPane scrollPane_yst = new JScrollPane();
scrollPane_yst.setBorder(null);
scrollPane_yst.setViewportBorder(null);
panel.add(scrollPane_yst);
JPanel panel_yst = new JPanel();
panel_yst.setPreferredSize(new Dimension(150, 1000));
panel_yst.setBorder(null);
panel_yst.setBackground(Color.DARK_GRAY);
scrollPane_yst.setViewportView(panel_yst);
panel_yst.setLayout(new BoxLayout(panel_yst, BoxLayout.Y_AXIS));
Во время выполнения я добавляю другие компоненты в panel_yst, но он не становится больше, когда компоненты превышают его размер. (Та же проблема с и без установки предпочтительного размера)
ОТВЕТ:
Я нашел решение. Проблема заключалась в том, что я установил предпочтительный размер панелей, которые я позже добавил на панель внутри полосы прокрутки.
Из-за этого размер этих панелей был испорчен. Просто не устанавливайте PreferredSize компонентов, которые вы добавляете на панель.