我是extjs布局的新手。 我有一个默认布局的窗体面板。我正在添加一个包含网格和两个按钮的字段集。我正在将表格面板渲染为div。
分为JSP
<div id="mydiv"></div>
JS中的FormPanel
var fp = new Ext.FormPanel(
{
standardSubmit :true,
id :'panel',
autoHeight :true,
layout: 'border',
bodyCfg: { cls: 'template' },
bodyPadding :10,
margin :'0 0 20',
frame :'true',
renderTo :'mydiv',
buttonAlign:'right',
items : [topPanel , fieldset ]
});
我希望根据窗口大小调整窗体和网格的大小(调整窗口大小调整元素大小)现在如果尝试调整窗口大小,则字段集会根据窗口调整大小,但网格不是。
我现在给网格一个固定的高度和宽度。没有那个网格只是水平扩展。
我不想给面板,网格任何高度宽度。如何实现?当我搜索我们将面板渲染到视口时,它将负责调整大小。如果是这样,那么我应该在extjs中创建一个视口并将其重新发送到div吗?如果是,那该怎么做?
编辑:或者我必须使用带有div的css?
任何指针都表示赞赏。 感谢
答案 0 :(得分:0)
你可以创建一个视口,这就像你说的那样,负责调整大小。
在视口中,您可以在面板中添加“项目”集合。如果希望面板适合视口,则应使用“适合”布局。
这些方面的东西是正确的想法:
var viewPort = new Ext.Viewport({
id: "blaa",
items: [fp],
layout: "fit"
)};
我没有在这里检查语法,但你明白了。
答案 1 :(得分:0)
使用锚属性。例如:anchor: '-10'
关于您想要此功能的任何组件。这将根据其父级宽度自动调整组件的宽度。
因此,如果您的formpanel
属于width
100px,则设置了anchor : '-10px'
的所有子组件的宽度为widthOfParent - anchorWidth
您还可以将布局设置为fit
。这会自动将所有子组件扩展到其父级的width
。