我有几个面板,我可以拖动它们并将它们放到其他地方。其中一些人有resizeHandles手动改变它的高度。如果我拖动一个面板并放置宽度小于面板的位置,并且其子项(工具栏,标题等)正在更改宽度。但是当我改变高度然后拖动如上所示的面板时,只有主面板宽度在变化,孩子们保持相同的尺寸。小组看起来像这样:
{
xtype: 'panel',
layout: 'fit',
resizable: true,
resizeHandles: 's',
draggable: {
moveOnDrag: false
},
items: [
toolbar or panel or container (depends on the panel)
]
}
我在想,调整后它会改变布局中的某些内容,但我无法找到任何东西。我试图调试它但是找出错误几乎是不可能的。尝试了doLayout(),doComponentLayout(),但似乎没有任何效果。现在我没有想法。
答案 0 :(得分:0)
好的,所以我在很长一段时间内调试了这个问题,我发现,在使用resizeHandles调整面板大小后,他们会获得一个宽度属性,并且在拖动之后它会以某种方式影响面板所以它不会调整大小。 解决方案是在调整大小后立即删除width属性,现在它可以正常工作。
修改强>
代码的侦听器部分是解决方案。也许不是最好的方式,但它确实有效。
{
xtype: 'panel',
layout: 'fit',
resizable: true,
resizeHandles: 's',
draggable: {
moveOnDrag: false
},
items: [
toolbar or panel or container (depends on the panel)
],
listeners: {
resize: function(component, ...) {
delete component.width;
}
}
}