带TextInputCell的GWT CellTable-值更改需要重新绘制,单元格失去焦点

带TextInputCell的GWT CellTable-值更改需要重新绘制,单元格失去焦点,gwt,Gwt,我有一个只有几列的CellTable,其中两列是TextInputCells。在更新此单元格中的值时,我进行计算(例如:total)并设置总计行的值。我需要重新绘制celltable以立即显示更新的值。我面临的问题是,当用户在第一个文本单元格中输入一个值并按下键盘上的tab键时,由于单元格表被重新绘制,所以单元格的焦点丢失 在重新绘制表格时,如何避免失去焦点 表结构: ID Description Month1 Month2 expenseId1

我有一个只有几列的CellTable,其中两列是TextInputCells。在更新此单元格中的值时,我进行计算(例如:total)并设置总计行的值。我需要重新绘制celltable以立即显示更新的值。我面临的问题是,当用户在第一个文本单元格中输入一个值并按下键盘上的tab键时,由于单元格表被重新绘制,所以单元格的焦点丢失

在重新绘制表格时,如何避免失去焦点

表结构:

ID         Description   Month1               Month2
expenseId1   Travel      10                    15
expenseId2   Food        40                    50
Subtotal                 50                    65
Misc.                    TextInputCell      TextInputCell
Total                    50                    65

谢谢

计算总计后无需重新绘制表格。您可以在网格上调用
dataProvider.refresh()
方法。它将刷新您的网格。

您必须调用
celltable

 cellTable.setVisibleRangeAndClearData(cellTable.getVisibleRange(),true); 
你也可以这样做


cellTable.setRowData(0,listOfObjs)
/
其中listOfObjs是您更改的数据

由于渲染周期,会发生这种情况。所以不可能保存焦点。因为每个渲染周期视图对象都不再存在。新的dom元素取而代之。

AsyncDataProviderI上没有refresh(),我刚才说的是列表数据提供程序。这是一个链接,你仍然没有把注意力放在输入上。你已经有了解决问题的方法吗?我正在与同样的问题作斗争,但还没有解决办法。这两个答案对我来说都不管用有答案吗?我仍然面临着这个问题。