我用GridPanel在一个页面显示三个表格GridPanelA、GridPanelB、GridPanelC(以下简称,A,B,C)。
  默认显示A,
           点击Button2,显示B、C,隐藏A,
           点击Button1,隐藏B、C,显示A
      我是用Ext.get(id).hide(),show()来隐藏和显示的。可是,这个时候问题来了:      隐藏A,显示B、C的时候,A虽然隐藏了,可是A的位置是白的,B、C没有覆盖A的位置。显示A,隐藏B、C的时候,页面空出一大块,可是滚动条却拉的好长,这问题怎么解决啊?

解决方案 »

  1.   

    Button2_Click(btn2a,btn2b)
    {
    Ext.get("gridA").setVisible(false);//gridA是ID
    Ext.get("gridB").setVisible(false);
    Ext.get("gridC").setVisible(false);
    }
    这样估计OK吧.
      

  2.   

    GridPanel不是要绑定到页面的容器上的么,把这个容器定位一下
      

  3.   

    如果grid是放在那个PANEL里并且没有ID可以用items[0].setVisible(true/false);来搞,估计也成了
      

  4.   

    after you hide or show a panel,
    try to call the dolayout method of the panel where GridPanelA,B,C lies in. 
    good luck...
      

  5.   

    setVisible(false/true)我试过了,也不行!
      

  6.   

    或者你可以用div这个容器来设置他的高度,这样也能实现隐藏然后自动补全的效果
      

  7.   

    嗯,这个可以,可以控制层的index属性