我在 JScrollPane 中有一个 JList,它放在 JPanel (BorderLayout.CENTER) 中,并将其放在另一个 JPanel 的 BorderLayout.EAST 中(这个 JPanel 的 CENTER 包含另一个 JPanel),整个 JPanel 放在 JTabbedPane 内。最初,它看起来像这样:
现在我将一些书添加到列表中:
如果我转到另一个选项卡并返回,则会发生这种情况:
我不明白的是,包含 JList 的 JPanel 设置了最小和最大大小:
JPanel listPanel = new JPanel();
listPanel.setLayout(new BorderLayout());
listPanel.add(new JScrollPane(bookList), BorderLayout.CENTER);
listPanel.setMinimumSize(listPanel.getPreferredSize());
listPanel.setMaximumSize(listPanel.getPreferredSize());
checkOutPanel.add(listPanel, BorderLayout.EAST);
如何防止 JList 自动调整大小?