1。 每个容器都有一个默认的布局管理器:如JFrame采用的是border layout ,而JPanel 采用的是流式布局flow layout
2。可以显示的更改布局方式:
panel.setLayout(new GridLayout(4,4));//改为网格布局
3。对于边框布局:(border layout)
添加一个组件:frame.add(component ,BorderLayout.SOUTH)//component 为一个组件 如JButton 将其添加到SOUTH方位
但是边框布局有一个缺点,即组件会被拉伸:
可以看到组件yellow 被拉伸了,并且当添加第二个按钮时前一个会被覆盖
解决这个问题的办法是:使用jpanel
例如:
JPanel panel=new JPanel();
panel.add(new JButton("yellow"));
frame.add(panel,BorderLayout.SOUTH)
4。 网格布局
设置布局panel.setLayout(new GridLayout(5,4));
设置的是5行4列的网格,且网格的大小形状完全一样;
panel.setLayout(new GridLayout(5, 4, 3, 3)); 后两个参数设置的网格间
的距离
<