【问题标题】:GWT - Datagrid : Keyboard single selection, when multi selection is enabledGWT - Datagrid:键盘单选,启用多选时
【发布时间】:2013-03-09 09:12:02
【问题描述】:

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

案例一:鼠标键盘多选

当我想通过鼠标选择多行时,我按住Ctrl 键或Shift 键,这工作正常。默认通过键盘,该动作由spacebar提供。当我想通过shift 键和spacebar 的键盘组合连续选择时,就可以了。

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

当我想通过鼠标选择一行时,我只需执行left click。如果我不持有ctrlshift 中的任何一个键并执行left click,即使选择了多行,它也会被取消选择,并且只选择当前行。这是预期的行为,我对此没有任何问题。

但是同样的事情是不能通过键盘实现的。 没有办法通过键盘选择一行。如果我按spacebar 选择一行,并且如果我在没有shift/ctrl 键的其他行上再次按spacebar,它会被多选,并且前一个选择的行不会被取消选择。

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

编辑:我opened this issue in gwt issues。我希望他们对此作出回应。

【问题讨论】:

  • +1 abhi。太清楚了:)

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


【解决方案1】:

您必须 use 一个 custom selection event managertranslatorclearCurrentSelection 返回您想要的行为的适当值。

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

【讨论】:

  • 我一定会尝试这种方法。但我有个问题。我的期望不应该是默认行为吗?在 Web 或桌面应用程序中的任何地方,除非您按住 ctrl 或 shift 之类的其他键,否则它不应该始终是单个选择吗?我应该在 gwt 问题列表中创建一个关于相同问题的问题,还是有任何具体原因为什么它是这样设计的
  • 我完全不知道。随意打开一个问题,但要准备好等待很长时间。这类事情,尤其是在有变通办法的情况下,优先级较低。支持您提出在野外您认为应该是正确行为的示例。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-11-26
  • 1970-01-01
  • 2013-09-07
相关资源
最近更新 更多