我有一個JPanel
與佈局CardLayout
和在每張卡片有另一JPanel
與佈局BorderLayout
其中JScrollPane
裏面。如何防止JScrollPane內部的組件調整大小?
即。
JScrollPane jscrollPane = new JScrollPane(filter.getFilterComponent());
JPanel jPanel = new JPanel(new CardLayout());
jPanel.add(jscrollPane);
JPanel container = new JPanel(new BorderLayout());
container.add(jPanel, BorderLayout.CENTER);
filter.getFilterComponent()
可以文本框,複選框列表或等
問題是,當它是一個JTextField
它看起來像這樣
這是不可取的行爲。當我使用FlowLayout
時,無論組件有多高,滾動條都不會出現。我認爲它是因爲其父容器preferredSize
爲0
如何防止JScrollPane
中的組件重新調整大小並將其維度保持原來的大小?或者有另一種方法來做到這一點?
我會嘗試使用'GridBagLayout',如果失敗,請考慮提供一個[可運行的示例](https://stackoverflow.com/help/mcve),它演示了您的問題。這不是代碼轉儲,而是您正在做的事情的一個例子,它突出了您遇到的問題。這會減少混淆和更好的響應 – MadProgrammer
好的,我會先嚐試'GridBagLayout'。 – newbie