gpt4 book ai didi

java - BorderLayout 设计错误

转载 作者:行者123 更新时间:2023-11-30 06:11:55 26 4
gpt4 key购买 nike

我有如下代码:

public static void main(String[] args) {
JFrame f = new BorderTest();
JPanel p = new JPanel();

p.setLayout(new BorderLayout());
p.add(new JButton("West"), "West");
p.add(new JButton("East"), "East");
p.add(new JButton("North"), "North");
p.add(new JButton("Center"), "Center");
p.add(new JButton("South"), "South");

Container c = f.getContentPane();
c.add(p);
f.pack();
f.setVisible(true);
}

产生:

enter image description here

我该如何修改我的代码,使按钮 North 和 South 的宽度与 Center 以及 West 和 East 的宽度相同,以垂直扩展以填充空间?

谢谢。

最佳答案

将“North”、“South”和“Center”组件添加到另一个容器中,使用一个BorderLayout,将这个容器添加到主容器的CENTER位置

Layout

JPanel p = new JPanel(new BorderLayout());

JPanel middle = new JPanel(new BorderLayout());
middle.add(new JButton("NORTH"), BorderLayout.NORTH);
middle.add(new JButton("CENTER"), BorderLayout.CENTER);
middle.add(new JButton("SOUTH"), BorderLayout.SOUTH);

p.add(middle);
p.add(new JButton("EAST"), BorderLayout.EAST);
p.add(new JButton("WEST"), BorderLayout.WEST);

关于java - BorderLayout 设计错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33491557/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com