2 sologgfun sologgfun 于 2015.07.18 13:28 提问

GirdLayout和FlowLayout的区别?

public class Shushanglizi{
public static void main(String[] args){
JFrame memain = new JFrame();
memain.setSize(300, 300);
//小组件;
JTextField t1 = new JTextField();
JComboBox bo = new JComboBox();
JButton t2 = new JButton("Send");
JTextArea a = new JTextArea();
//模块化;
Panel p2 = new Panel();
p2.setLayout(new GridLayout(1,2));
p2.add(bo);
p2.add(t2);
Panel p1 = new Panel();
p1.setLayout(new GridLayout(2,1));
p1.add(t1);
p1.add(p2);
Panel p3 = new Panel(new GridLayout(1,1));
p3.add(a);
//整合;
memain.setLayout(new BorderLayout());
memain.add(p3,BorderLayout.CENTER);
memain.add(p1,BorderLayout.NORTH);
memain.setVisible(true);

}
}

为什么加粗部分改成FlowLayout()或者什么都不添加的话就显示不了TestArea的内容呢?
明明只有它一个啊

3个回答

tongyi55555
tongyi55555   2015.07.18 16:23
已采纳

默认的layout就是flowlayout,不显示的原因是你的textArea中没有内容,默认显示的是最小的,即你看不到。而gridlayout会根据你设置的行列进行布局,textArea会占满所在的单元格。

z13580130369
z13580130369   2015.07.18 14:38

flowLayout是流型的,一行排不完下行继续。gridlayout是网格型的,各个格子大小都一样。

caozhy
caozhy   Ds   Rxr 2015.07.19 06:55

一个是网格布局,一个是流布局

网格布局每行多少列是固定的, 流布局如果这一行装不下,就会送入下一行。

Csdn user default icon
上传中...
上传图片
插入图片