我们必须创建满足以下条件的流体布局:
Window中有一个Form。
如果窗口宽度增加,那么表单宽度及其字段宽度也应该增加。
如果窗口宽度减小,则表单宽度及其字段宽度应该减小,但只能达到一个限制。
如果窗口宽度减小到超出限制,那么窗体上应该会出现一个滚动条。
我们尝试通过将 flex 赋予字段并将 minWidth 赋予窗体,假设 flex 将负责宽度的增加,并且如果窗口宽度进一步减小,窗体的 minWidth 将导致滚动。
但不幸的是,这不适用于以下测试用例:
<html>
<head>
<title>TEST</title>
<link rel='stylesheet' href='resources/extjs/resources/css/ext-all.css' />
<script type='text/javascript' src='resources/extjs/ext-all-dev.js'></script>
<script type='text/javascript'>
function getForm(){
var form = {
xtype:'form',
region:'north',
height:100,
autoScroll:true,
minWidth:300,
title: 'Simple Form',
items: [
{
xtype:'container',
layout:'hbox',
items:[
{
xtype:'textfield',
fieldLabel: 'First',
name: 'first',
allowBlank: false,
width:100,
labelWidth:50,
flex:1
},{
xtype:'textfield',
fieldLabel: 'Last',
name: 'last',
allowBlank: false,
width:100,
labelWidth:50,
flex:1
}
]
}]
};
return form;
}
function getWin(){
var win = Ext.create('Ext.window.Window',{
title:'Test Window',
height:400,
width:600,
layout:'border',
items:[
getForm(),
{
region:'center',
title:'Center Region',
html:'Center Region Content'
}
]
});
return win;
}
Ext.onReady(function(){
var win = getWin();
win.show();
});
</script>
</head>
<body>
</body>
</html>
关于如何实现这一目标的任何建议?或者这里做错了什么?