Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/extjs/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Extjs 如何在中心对齐栅格面板_Extjs_Gridpanel - Fatal编程技术网

Extjs 如何在中心对齐栅格面板

Extjs 如何在中心对齐栅格面板,extjs,gridpanel,Extjs,Gridpanel,我将ExtJS网格面板放置在iFrame中。有人知道如何将其放置在iFrame的中心吗 现在看起来像这样- 我希望是这样- 类似于 grid: region: center; panel: layout: border; css: "padding: 40px" IFrame的内容可以使用如上所述的边框布局,也可以不使用布局,如下所示: var viewPort = new Ext.Viewport({ renderTo:'body', width: 400,

我将ExtJS网格面板放置在iFrame中。有人知道如何将其放置在iFrame的中心吗

现在看起来像这样-

我希望是这样- 类似于

grid:
  region: center;

panel:
  layout: border;
  css: "padding: 40px"

IFrame的内容可以使用如上所述的边框布局,也可以不使用布局,如下所示:

var viewPort = new Ext.Viewport({
    renderTo:'body',
    width: 400,
    height: 400,
    items:[new Ext.Panel({
        title: 'hi',
        width: 200,
        height: 200,
        style: 'margin:0 auto;margin-top:100px;'
    })]
}))

中有一个例子,您可能想看看

layout:'ux.center',
items: {
    title: 'Centered Panel',
    widthRatio: 0.75,
    html: 'Some content'
}

另一种不那么优雅的方式是VBox和HBox布局,但它是纯ExtJS,不依赖UX:

Ext.create('Ext.container.Viewport',{
    style: 'background-color: white;',

    layout: {
        type: 'vbox',
        align : 'stretch',
        pack  : 'start',
    },
    items: [{
        flex: 1,
        border: false
    },{
        height: 200,
        border: false,
        layout: {
            type: 'hbox',
            pack: 'start',
            align: 'stretch'
        },
        items: [{
            flex: 1,
            border: false
        },{
            html:'Centered Panel',
            width: 400
        },{
            flex: 1,
            border: false
        }]
    },{
        flex: 1,
        border: false
    }]

    //items: [login_panel],

});
只需使用:

this.center()

其中“this”是您要放在中间的对象(比如网格)。

谢谢Skym。还有一个问题:显然这有副作用