6

JPanel(BorderLayout.CENTER)に配置されたJScrollPane内にJListがあり、それを別のJPanelのBorderLayout.EAST(このJPanelのCENTERには別のJPanelが含まれています)内に配置し、このJPanel全体をJTabbedPane内に配置します。最初は、次のようになります。 初期 JList GUI

ここで、いくつかの本をリストに追加します。

いくつかの本を含む JList

別のタブに移動して戻ると、次のようになります。

サイズ変更された JList

私が理解していないのは、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 の自動サイズ変更を防ぐにはどうすればよいですか?

4

1 に答える 1

6

アーカイブしようとしているものに応じて、JList#setPrototypeCellValueまたはを使用できますJList#setFixedCellWidth。これらはPeferredScrollableViewportSizeメソッドにフィードバックされ、スクロールペインに影響します。

于 2012-11-28T09:22:52.567 に答える