我有EXT JS网格,宽度大于屏幕宽度。我必须拖动列来更改它的顺序,但是当我将列标题拖到屏幕边缘时 - 容器不会滚动。因此需要首先手动滚动然后将列拖放到正确的位置。 拖动列时如何向左或向右移动容器? 我使用 gridviewdragdrop 插件尝试 containerScroll ,但只有在我拖动行时才有效:
viewConfig: {
plugins: {
ptype: 'gridviewdragdrop',
containerScroll: true
},
}
答案 0 :(得分:2)
好的,花了一些时间我找到了workround。渲染和控制左右区域后,必须将mousemove事件添加到网格dom,然后使用网格视图的scrollBy函数。这是代码:
listeners: {
afterrender:function(me){
//console.log(me);
me.el.dom.onmousemove=function(ev){
if (ev.x>(me.el.dom.clientWidth-50)){
// console.log(ev);
me.view.scrollBy(50, 0, false);
}
if (ev.x<50){
// console.log(ev);
me.view.scrollBy(-50, 0, false);
}
};
},