滚动到ExtJS网格中的选择

dav*_*ave 5 grid extjs

嘿,我需要能够将我的ExtJS网格滚动到当前选择,但不知道如何做到这一点.我在论坛中发现了一个关于ensureVisible方法的引用,但是找不到任何信息.有人可以提出任何建议吗?谢谢

CTa*_*zon 9

不幸的是,从ExtJS 4中删除了ensureVisible().我发现最直接的解决方案是使用scrollIntoView().就我而言,这是在根据我加载的值选择行之后.

var rowIndex = store.find('fieldName', value);
grid.getSelectionModel().select(rowIndex);
Ext.fly(grid.getView().getNode(rowIndex)).scrollIntoView();
Run Code Online (Sandbox Code Playgroud)

这将显示网格底部的选定行.需要做更多的工作才能将它放在网格的顶部或中间.


小智 9

这似乎也有效:

grid.getView().focusRow(rowIdx);
Run Code Online (Sandbox Code Playgroud)


小智 5

这似乎也有效:

    grid.getView().getRow(rowIdx).scrollIntoView();
Run Code Online (Sandbox Code Playgroud)


dav*_*ave 2

抱歉,我实在是太笨了。我刚刚尝试了 EnsureVisible,效果很好。