首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >GWT-CellTable/Datagrid-BOUND_TO_SELECTION导致错误

GWT-CellTable/Datagrid-BOUND_TO_SELECTION导致错误
EN

Stack Overflow用户
提问于 2014-03-24 20:41:05
回答 1查看 457关注 0票数 0

我已经创建了一个GWT DataGrid (它本质上就像一个单元格表),并且得到了一个非常奇怪的错误。

代码语言:javascript
复制
java.lang.IllegalStateException: A possible infinite loop has been detected in a Cell
Widget. This usually happens when your SelectionModel triggers a SelectionChangeEvent 
when SelectionModel.isSelected() is called, which causes the table to redraw continuously.

在搜索网络时,我几乎没有发现这个错误的信息,而且它根本没有影响前端,事实上,它工作得很完美。然而,在发生特定场景时,eclipse中仍然存在错误。

如何再现错误:

特定于-Selecting的过滤器(无法确定为什么它不一致地对每个列过滤器错误)

-selecting包含隐藏在(.)中的数据的单元格然后键入左右键盘箭头。当用户悬停在单元格上时,行高度会扩大,所有文本都会显示。)

导致/修复错误的原因:

错误似乎来自于代码行:

代码语言:javascript
复制
myDataTable.setKeyboardSelectionPolicy(KeyboardSelectionPolicy.BOUND_TO_SELCTION);

当我注释掉这一行时,错误就不再发生了。问题是功能不理想,因为键盘选择与鼠标选择是分开的,并且存在整个"3活动状态“问题。

关于我的代码的

我正在使用:

-SingleSelectionModel

-DoubleClick DOM处理程序

-SelectionChangeEvent.Handler (即使注释掉了,错误仍然显示出来)

更新的进一步信息:

当我在调试器中继续运行时,它只会像5次一样不停地调用onSelectionChange,然后出错。然后,就像我说的,如果我删除SelectionChange处理程序,它将不会击中我的文件中的任何断点,但是会再次转到GWT文件HasDataPresenter.Class并继续运行,直到它最终在那里出错(循环样式)。

此外,如果我首先选择一个没有省略号(.)的单元格箭在一个有它的人上面,我没有收到错误。只有当我最初选择一个带有(.)然后射出箭头,这样就会出错。

EN

回答 1

Stack Overflow用户

发布于 2014-03-24 23:25:05

既然你没有提供密码,我得猜。

设置/隐藏省略号的方式触发要重新绘制的表。这反过来会触发选择事件(选择相同的单元格)。一旦选定了一个单元格,它就会触发另一个表重绘,等等。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22620157

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档