1

我试图让一个网格占据面板内的整个空间,在通过这个论坛搜索后,我读到合适的布局应该有助于这种情况。但是,我仍然无法做到这一点。

         {
            xtype:'panel',
            layout:'fit',
            items: [{
                     xtype: 'grid',
                     store: 'DimensionStore',
                     id: 'dimension-grid',
                     padding: '0 5 0 5',
                     viewConfig: { emptyText: '<div style="padding:10px;">No dimensions found...</div>' },
                     columns: [{ 
                                header: 'Name', dataIndex: 'DimensionName', flex: 2 
                              }]
                     }
                  }]
         }

它起作用的唯一方法是为网格设置绝对高度,但这违背了目的,因为面板+网格位于可扩展的窗口内,并且在扩展时看起来并不好看。

4

1 回答 1

4

根据您向我们展示的图像,布局问题似乎与包含您的文本字段和网格的顶部“尺寸”面板有关。那实际上是这里负责布局的组件,而不是网格。

您可以做几件事,具体取决于您打算如何使用它。最简单的解决方案是使用“vbox”布局。“尺寸”面板将有两个项目,一个用于具有固定高度的面板,其中包含您的文本字段,另一个包含您的 flex 为 1 的网格。这样,网格将填充剩余区域。

Ext.layout.container.VBox 文档

您还可以使用边框布局,将文本字段作为“北”区域,将网格作为“中心”区域,并使用“适合”布局,这将完成同样的事情。

Ext.layout.container.Border 文档

这一切都基于您有限的代码示例和链接图像。您可能需要提供更完整的代码示例以方便进一步的帮助。

于 2012-03-12T15:46:16.363 回答