一个网袋布局(GridBagLayout)的问题
import java.awt.*;
public class guitest6 extends Frame
{
public guitest6()
{
setTitle("网袋布局");
GridBagLayout layout=new GridBagLayout();
Panel p=new Panel(layout);
GridBagConstraints cons=new GridBagConstraints();
cons.gridx=100;
cons.gridy=100;
cons.gridwidth=1;
cons.gridheight=4;
cons.weightx=0;
cons.weighty=GridBagConstraints.RELATIVE;
Button b1=new Button("A");
layout.setConstraints(b1,cons);
p.add(b1);
cons.gridx=200;
cons.gridy=100;
cons.gridwidth=1;
cons.gridheight=1;
cons.weightx=0;
cons.weighty=0;
Button b2=new Button("B");
layout.setConstraints(b2,cons);
p.add(b2);
cons.gridx=200;
cons.gridy=125;
cons.gridwidth=1;
cons.gridheight=1;
cons.weightx=0;
cons.weighty=0;
Button b3=new Button("C");
layout.setConstraints(b3,cons);
p.add(b3);
cons.gridx=200;
cons.gridy=150;
cons.gridwidth=1;
cons.gridheight=1;
cons.weightx=0;
cons.weighty=0;
Button b4=new Button("D");
layout.setConstraints(b4,cons);
p.add(b4);
cons.gridx=200;
cons.gridy=175;
cons.gridwidth=1;
cons.gridheight=1;
cons.weightx=0;
cons.weighty=0;
Button b5=new Button("E");
layout.setConstraints(b5,cons);
p.add(b5);
add("Center",p);
}
public boolean handleEvent(Event evt)
{
if(evt.id==Event.WINDOW_DESTROY)System.exit(0);
return super.handleEvent(evt);
}
public static void main(String[] args)
{
guitest6 f=new guitest6();
f.resize(600,500);
f.setBackground(Color.white);
f.show();
}
}
想用GridBagLayout实现下面的按钮效果,那里不对,为什么?
----------------------
| ________________ |
| | | B | |
| | --------- |
| | | C | |
| | A --------- |
| | | D | |
| | --------- |
| | | E | |
| ---------------- |
|____________________|