GWT - 数据网格:启用多选时的键盘单选

时间:2013-03-09 09:12:02

标签: gwt datagrid gwt-celltable gwt-2.5 gwt-2.4

当我在DataGrid启用键盘选择策略和多选时,我遇到了这个问题。

案例1 :通过鼠标和键盘进行多项选择

当我想通过鼠标选择多行时,我按住Ctrl键或Shift键,这样可以正常工作。默认情况下,通过键盘,此操作由spacebar提供。当我想通过shift键和spacebar的键盘组合串行选择时,就可以了。

案例2 :通过鼠标和键盘进行单选(这是问题开始的地方

当我想通过鼠标选择单行时,我只需要left click。如果我没有ctrl shift left click键,并且执行spacebar,即使选择了多行,也会取消选择,只会选中当前行。这是预期的行为,我对它没有任何问题。

但是同样的事情无法通过键盘实现。 无法通过键盘选择单行。如果我按spacebar,则会选择一行,如果我在没有shift/ctrl键的其他行上再次按{{1}},则会获得多选,并且不会取消选择之前选定的行。

我的问题是:如何通过类似于鼠标的键盘实现单选?

编辑:我opened this issue in gwt issues。我希望他们回应这个。

1 个答案:

答案 0 :(得分:5)

您必须use custom selection event manager translatorclearCurrentSelection返回所需行为的相应值。

default behavior始终在键盘选择中添加/删除,并使用控件或元键切换是否在使用鼠标时清除当前选择。