gpt4 book ai didi

java - BorderLayout 中心间隙较大

转载 作者:行者123 更新时间:2023-12-02 01:58:53 29 4
gpt4 key购买 nike

我正在编写一个程序,该程序旨在使用在窗口的西侧和东侧有两个按钮的 BorderLayout。不知怎的,中心有一个很大的差距。有什么方法可以消除这个间隙并使两个按钮彼此相切吗?下面我附上了我的代码。如有任何帮助,我们将不胜感激:)。

import java.applet.*;
import java.awt.*;

public class HON extends Applet {

Button p1;
Button p2;
BorderLayout layout;

public void init() {
layout = new BorderLayout();
setLayout(layout);

p1 = new Button("text");
p2 = new Button("text");

add(p1, BorderLayout.WEST);
add(p2, BorderLayout.EAST);

}

public void stop() {

}}

最佳答案

BorderLayout 的作用正如其名称所暗示的那样 - 将内容放在边框上。这就是中心间隙的原因。如果您想要有 2 个并排按钮的东西,我会推荐 GridLayout,因为它很简单。代码会是这样的:

GridLayout layout = new GridLayout(1,2); // Or (2,1), depending on how you want orientation
JPanel pane = new JPanel();
pane.setLayout(layout);
pane.add(leftButton); // Where leftButton is the JButton (or other swing component) on the left
pane.add(rightButton); // Same goes for the right JButton
// Then add your JPanel to the Frame and all that jazz below.

如果我正确理解你的问题,这应该可以满足你的要求。另请注意,我使用的是 Swing 组件,因为它们仍然由 Java 维护。如果您需要任何其他帮助,请留下评论/问题。

编辑:请注意 MadProgrammer 建议使用 GridBagLayout 的评论。这比普通的 GridLayout 更强大/更通用,但也有点难学,所以你可以选择你想做的事情。

关于java - BorderLayout 中心间隙较大,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51913070/

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