窗口中有2项的extjs间距问题

窗口中有2项的extjs间距问题,extjs,extjs3,Extjs,Extjs3,我有一个extjs窗口对象,如下所示: win = new Ext.Window({ layout:'fit', title: '<spring:message code="title.alertDetails" />', autoDestroy: true, autoScroll: true, width:600, height:400, closable:false, plain: true, items: [detailGrid,msgDetailsPanel], butto

我有一个extjs窗口对象,如下所示:

win = new Ext.Window({
layout:'fit', 
title: '<spring:message code="title.alertDetails" />',
autoDestroy: true,
autoScroll: true,
width:600,
height:400,
closable:false,
plain: true,
items: [detailGrid,msgDetailsPanel],
buttons: [{
text: '<spring:message code="label.button.close" />',
handler: function(){
win.hide(this);
}
}]
});
win=新的外部窗口({
布局:'适合',
标题:“”,
自动销毁:对,
autoScroll:是的,
宽度:600,
身高:400,
可关闭:错误,
朴素:没错,
items:[detailGrid,msgDetailsPanel],
按钮:[{
文本:“”,
处理程序:函数(){
赢。藏(这个);
}
}]
});
有两个项目:detailGrid(GridPanel)和msgDetailsPanel(Ext.ux.managedFrame.Panel)

现在,当窗口渲染时,detailGrid会占用大量的垂直空间,即使网格只有一个项目,我需要向下滚动以查看msgDetailsPanel。如何使这两个项目根据其内容自动调整大小?

我认为最好的方法是:

  • 使用边框
    布局
    赢<代码>中心区域用于网格,南部区域用于面板
  • 设置面板
    height=win.height-grid.getStore().getCount()*25-30
  • 为面板设置
    split=true

  • 只需为
    grid
    ManagerIFramePanel
    设置
    autoHeight:true
    ,并删除它们的
    height
    属性。然后
    网格
    面板
    将只占用其
    子项
    网格行
    所需的空间。原因实际上是因为您在窗口本身上设置了布局:“适合”,它应该只支持跨越面板整个高度和宽度的单个项目。使用布局:“自动”或“vbox”/“hbox”