求大神指点布局管理器问题

s杰 2013-10-18 11:14:07
import java.awt.BorderLayout;
import java.awt.Container;
import javax.swing.JButton;
import javax.swing.JFrame;

public class p268
{
public static void main(String args[])
{
JFrame app=new JFrame("边界布局管理器");
app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
app.setSize(360,130);
Container c=app.getContentPane();
c.setLayout(new BorderLayout(3,3));
c.add(new JButton("东"),BorderLayout.EAST);
c.add(new JButton("西"),BorderLayout.WEST);
c.add(new JButton("南"),BorderLayout.SOUTH);
c.add(new JButton("北"),BorderLayout.NORTH);
c.add(new JButton("中"),BorderLayout.CENTER);
app.setVisible(true);
}
}
这个例子的结果是
但是我想让东和西的按钮延长到边框,让南北夹在中间,谁知道如何实现?
...全文
201 2 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
Defonds 版主 2013-10-19
  • 打赏
  • 举报
回复
swing 很久没做了。你换个容器试试?
失落夏天 2013-10-19
  • 打赏
  • 举报
回复
解决方式有两种, 第一,把布局管理器置为空,直接每个控件使用setBounds();绝对布局去实现, 第二,BorderLayout默认就是这样布局的,如果你想实现你说的方式,那么你可以

public static void main(String args[]) {
		JFrame app = new JFrame("边界布局管理器");
		app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		app.setSize(360, 130);
		Container c = app.getContentPane();
		c.setLayout(new BorderLayout());
		
		JPanel j=new JPanel();
		j.setLayout(new BorderLayout());
		j.add(new JButton("北"), BorderLayout.NORTH);
		j.add(new JButton("中"), BorderLayout.CENTER);
		j.add(new JButton("南"), BorderLayout.SOUTH);
		
		
		c.add(new JButton("东"), BorderLayout.EAST);
		c.add(new JButton("西"), BorderLayout.WEST);
		c.add(j, BorderLayout.CENTER);
		
		app.setVisible(true);
	}

51,397

社区成员

发帖
与我相关
我的任务
社区描述
Java相关技术讨论
javaspring bootspring cloud 技术论坛(原bbs)
社区管理员
  • Java相关社区
  • 小虚竹
  • 谙忆
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧