我正在创建一个小程序,并且我的按钮大小定位有问题。我添加了两个按钮,但“确定”按钮似乎正确定位和调整尺寸,但“清除”按钮填充了“确定”按钮后面的整个小程序区域。有什么问题的建议吗?
@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);
}
答案 0 :(得分:2)
使用BorderLayout
时,您应指定要放置组件的位置。如果不这样做,则默认为BorderLayout.CENTER
。此外,每个位置只能包含一个组件。因此,当您致电add(btn_OK)
时,“确定”按钮将添加到面板的中心。但是,您可以通过调用add(btn_CLEAR);
将其替换为“清除”按钮。
此外,BorderLayout
中的每个位置占用一定的空间。该位置的组件将伸展以填充该空间。特别是,CENTER占用了其他位置未使用的所有剩余空间。
我认为BorderLayout
不是你想要的。有关每个LayoutManager的更多信息,请查看Visual Guide to Layout Managers。您还可以按照教程跟踪的其余部分了解有关如何实现每个教程的详细信息。
您还应该为the Java API docs添加书签并熟悉自己。这些是每个Java程序员必不可少的工具,可以帮助您自己回答很多问题。