我想将我的屏幕拆分为两部分,所以我使用了BorderLayout和East和West部分。我在调整大小时遇到了问题,最终我发现(请参阅:http://www.leepoint.net/notes-java/GUI/layouts/20borderlayout.html)东西方面板中的宽度未更改,而北面和南面面板中的高度没有发生变化,两者在中心面板中都发生了变化。Java Swing BorderLayout调整难度
但是,我希望在调整大小时更改宽度和高度,并且并排放置两个面板。我尝试过不同级别的嵌套来尝试让它工作,但我认为它不会与BorderLayout一起使用。
对于默认的布局管理器来说,这应该很容易,但也许我应该尝试不同的布局(例如BoxLayout)来达到我想要的效果?
而且,这里是一些代码,复制我谈论这个问题(尝试调整窗口大小):
import java.awt.BorderLayout;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
public class Main extends JFrame {
public static void main(String[] args) {
JFrame window = new Main();
window.setVisible(true);
}
public Main() {
JButton east = new JButton("East");
JButton west = new JButton("West");
JPanel content = new JPanel();
content.setLayout(new BorderLayout());
content.add(east, BorderLayout.EAST);
content.add(west, BorderLayout.WEST);
setContentPane(content);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
pack();
}
}
编辑:我不希望双方是平等的,大约为2:1的比例是我想要的。
如果你只想分成两部分。为什么你不使用GridLayout? – Sednus