新网创想网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
FlowLayout 流式布局,从左到右,如果到边界就换行再从左到右。
成都创新互联公司坚持“要么做到,要么别承诺”的工作理念,服务领域包括:做网站、网站设计、企业官网、英文网站、手机端网站、网站推广等服务,满足客户于互联网时代的陆良网站设计、移动媒体设计的需求,帮助企业找到有效的互联网解决方案。努力成为您成熟可靠的网络建设合作伙伴!
BorderLayout 边界布局(默认布局方式),按东西南北中五个方向来布局,默认是中。后设置在同样位置的控件会覆盖之前的控件。
GridLayout 网格布局,将容器划分成若干行列的网格,从左到右,然后从上到下。每个控件的大小相同。
center.setLayout(new GridLayout(3,4)); 你这个是3行4列 也就是能放12个的 但是你却放了16个button 当然不行啦
1.布局首先要理清思路,那一个组件放在哪个组件里面,就如你的代码他们分别是 JFrame f中放置了JPanel center,而JPanel center中又放置了5个testPanel[] t = new testPanel[5];
也就是说,你的5个test_shu对象的位置由center容器的布局方式决定即你的代码22行处 private JPanel center = new JPanel(new FlowLayout());
这个布局方式决定,所以,而FlowLayout的布局方式的默认值是:
流式布局管理器把容器看成一个行集,好象平时在一张纸上写字一样,一行写满就换下一行。行高是用一行中的控件高度决定的。FlowLayout是所有 JApplet/JApplet的默认布局。在生成流式布局时能够指定显示的对齐方式,默认情况下是居中(FlowLayout.CENTER)
FlowLayout() //生成一个默认的流式布局,组件在容器里居中,每个组件之间留下5个像素的距离.
FlowLayout(int alinment) //可以设定每行组件的对齐方式.
FlowLayout(int alignment,int horz,int vert) //设定对齐方式并设定组件水平和垂直的距离.
当容器的大小发生变化时,用FlowLayout管理的组件会发生变化,其变化规律是:组件的大小不变,但是相对位置会发生变化.
所以要达到你的效果,只需要将
22行处的代码改成如下设置就可以了:
private JPanel center = new JPanel(new FlowLayout(FlowLayout.CENTER, 0, 0));
所有的容器均可以调用父类设置布局管理器方法
setlayout(layoutmanager
mgr)
设置此容器的布局管理器。