import java.awt.*;
import java.awt.event.*;
class Gridbaglayoutpanel extends Panel{
public Gridbaglayoutpanel(){
setLayout(new GridBagLayout());
GridBagConstraints gbc=new GridBagConstraints();
gbc.fill=GridBagConstraints.BOTH;
gbc.weightx=1.0;
gbc.weighty=1.0;
addButton(new Button("左邻"),gbc,0,0,1,2);
addButton(new Button("左邻"),gbc,0,0,1,2);
addButton(new Button("左邻"),gbc,0,0,1,2);
addButton(new Button("左邻"),gbc,0,0,1,2);
}
public void addButton(Component c,GridBagConstraints g,int x,int y,int w,int h){
g.gridx=x;
g.gridy=y;
g.gridheight=h;
g.gridwidth=w;
add(c,g);
}

}
public class gridtag extends Panel {
public static void main(String[] args) {
gridtag th =new gridtag();
th.add(new Gridbaglayoutpanel());
th.setSize(400,400);
th.setVisible(true);
   }}

解决方案 »

  1.   

    你的gridtag 怎么是继承的Panel而不是JFrame 或者Frame什么的呢?
      

  2.   

    如果你是applet 那么要一个 public void init()
    如果你是java   那么要一个 public static void main()
      

  3.   

    panel需要一个顶层容器来装载它,所以,你gridtag如果extends的Frame或者JFrame就可以显示
      

  4.   

    didoleo(冷月无声) 和withwind79(withwind79)说得对。
    赶快改程序吧!