Java 小程序按钮填充区

Java 小程序按钮填充区,java,user-interface,button,applet,Java,User Interface,Button,Applet,我正在创建一个小程序,在按钮大小的定位上有问题。我添加了两个按钮,但是“OK”按钮的位置和大小似乎正确,但是“CLEAR”按钮填充了“OK”按钮后面的整个小程序区域。有什么问题的建议吗 @Override public void init() { super.init(); setSize(J_WIDTH, J_HEIGHT); setLayout(new BorderLayout()); btn_OK = new Button("OK"); btn

我正在创建一个小程序,在按钮大小的定位上有问题。我添加了两个按钮,但是“OK”按钮的位置和大小似乎正确,但是“CLEAR”按钮填充了“OK”按钮后面的整个小程序区域。有什么问题的建议吗

@Override
public void init() 
{
    super.init();

    setSize(J_WIDTH, J_HEIGHT);
    setLayout(new BorderLayout());

    btn_OK = new Button("OK");
    btn_CLEAR = new Button("CLEAR");

    btn_OK.setBounds(50, 450, 75, 50);
    btn_CLEAR.setBounds(125, 50, 75, 50);

    add(btn_OK);
    add(btn_CLEAR);

    btn_OK.addActionListener(this);
    btn_CLEAR.addActionListener(this);
}

使用
边框布局时,应指定要放置构件的位置。如果没有,默认值为
BorderLayout.CENTER
。此外,每个位置只能包含一个组件。因此,当您调用
add(btn_OK)
时,OK按钮会添加到面板的中央。但是,您可以通过调用
add(btn\u Clear)将其替换为Clear按钮

此外,
BorderLayout
中的每个位置都会占用一定的空间。该位置的零部件将拉伸以填充该空间。特别是,中心占据了其他位置未使用的所有剩余空间

我认为
BorderLayout
不是您想要的。有关每个LayoutManager的更多信息,请查看。您还可以按照教程的其余部分了解如何实现它们中的每一个的详细信息


你也应该把自己收藏起来,熟悉一下。对于每个Java程序员来说,它们都是一个必不可少的工具,可以帮助您自己回答许多问题。

(实际上,
BorderLayout
只允许一个组件占据其布局中的给定点,基本上可以将所有其他组件归零,但概念是一样的)@MadProgrammer感谢您的澄清。我的措辞很糟糕。我不确定是一个组件替换了另一个组件,还是它们只是一个一个地画在另一个上面。这对我来说很挑剔,但顺便说一下,你的概念是正确的+1谢谢你的输入。决定将布局设为空,以便更好地控制positioning@SpicyWeenie大多数Java程序员都不喜欢空布局。这主要是因为当用户调整窗口大小时,必须手动重新计算位置和大小。布局经理为你做这项工作。我强烈建议您了解可用的不同布局。几乎可以肯定有一款会给你想要的外观。