本帖最后由 聂斌 于 2013-4-2 23:29 编辑
同学你的代码:
f.add(bn.BorderLayout.NORTH);
f.add(bn.BorderLayout.NORTH);
f.add(bn.BorderLayout.NORTH);
f.add(bn.BorderLayout.NORTH);
f.add(bn.BorderLayout.NORTH); // (a)
第一个错误:bn 后面不是加(.)号而是加(,)呵呵以后注意下就可以了
第二个错误:f.add 添加了4次都是bn.BorderLayout.NORTH ,因为BorderLayout 是将组件按东、南、西、北、中五个区域放置,每个方向最多只能放置一个组件,所以你的界面存放的是(a)处的按钮,,前面的按钮都被覆盖了,,,只有最后一个按钮显示在界面的北部
下面是我的代码:效果是界面中有5个按钮分别在不同的方向,东南西北中
Frame f=new Frame("BorderLayout布局管理器");
Button bn=new Button("北(North)");
Button bs=new Button("南(South)");
Button bw=new Button("西(West)");
Button be=new Button("东(East)");
Button bc=new Button("中(Center)");
f.add(bn,BorderLayout.NORTH);
f.add(bs,BorderLayout.SOUTH);
f.add(be,BorderLayout.EAST);
f.add(bw,BorderLayout.WEST);
f.add(bc,BorderLayout.CENTER);
f.setSize(300,300);
f.setVisible(true);
|