当我在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。我希望他们回应这个。
答案 0 :(得分:5)
您必须use custom selection event manager translator为clearCurrentSelection
返回所需行为的相应值。
default behavior始终在键盘选择中添加/删除,并使用控件或元键切换是否在使用鼠标时清除当前选择。