我试图让我的treepanel以两种方式滚动。 继承我的代码:https://fiddle.sencha.com/#fiddle/13cb
我可以在我的包装面板中设置scrollable: true
,但这不能解决水平滚动问题。
此外,通过这种方法,组合框也向上滚动。但我只想让树梢水平和垂直滚动。我怎样才能做到这一点?
提前致谢
答案 0 :(得分:1)
我不确定我们是否能够达到您想要的效果。但是试试吧。
要使垂直滚动条工作,您必须在树状面板上定义高度。截至目前,treepanel动态调整其内容的高度,因为没有为它定义高度。由于即使父面板没有定义高度,给出高度百分比也不起作用,但是例如身高:500。如果您需要在调整浏览器窗口大小时浮动布局,请查看父面板的vbox
或border
布局。
要使水平滚动条工作,您必须知道网格列的工作原理。您尚未定义列配置,这使得treepanel假定您希望单个列占用树窗板宽度的100%:
if (!me.columns) {
if (me.initialConfig.hideHeaders === undefined) {
me.hideHeaders = true;
}
me.addCls(me.autoWidthCls);
me.columns = [{ // define columns configuration with a single column
xtype : 'treecolumn', // the column should be a treecolumn
text : 'Name',
flex : 1, // and take up 100% of the width of the panel
dataIndex: me.displayField // and use the displayField as
}];
}
您无法使列自动占用其内容所需的宽度。但你可以,例如收听nodeexpand and nodecollapse个事件并致电column.autoSize()。