0
http://pastebin.com/VaaTRsuf爲什麼JList和TextArea組件不能使用GridBagLayout來調整大小?
我想讓JList和JTextArea調整窗口大小,但JPanel停留在中心位置。
http://pastebin.com/VaaTRsuf爲什麼JList和TextArea組件不能使用GridBagLayout來調整大小?
我想讓JList和JTextArea調整窗口大小,但JPanel停留在中心位置。
您的LogView類擴展JPanel,因此除非您更改它,否則它使用JPanel的默認佈局FlowLayout。在容器更改大小時,保存在FlowLayout使用容器中的組件不會更改大小,因此如果需要此行爲,則不需要組件監聽器 - 只需將LogView JPanel的佈局管理器更改爲BorderLayout或類似的東西,允許其持有的組件擴大,就是這樣。一行代碼:
public LogView(final JFrame contentPane) {
// .......
setLayout(new BorderLayout()); // add this, that's it
add(mainPanel);
}
另一種選擇是擺脫mainPanel中,因爲它似乎沒有必要在所有的,要設置你的日誌查看對象的佈局是GridBagLayout的和你的組件直接添加到LogView對象。