2

所以我有一个带有各种输入的 GWT cellTable,包括选择框、EditTextCells 和一些链接。我希望 TAB 沿着每个单元格走。

但是,目前我只能让 TAB 在选择框之间切换(何时KeyboardSelectionPolicy.DISABLED)。(即从这里)。但它不会选项卡到 EditTextCells 或其他单元格。

(可能相关的是, EditText<input>似乎他们不能有他们的 tabindex!=-1,否则我会看到 cellTable 抛出错误。(并且它似乎在 EditText 中警告你不应该这样做)。

是否还有另一个我可能缺少的 EditText 或其他通用单元格的 tabIndex?这里的一个人似乎无法让它发挥作用并选择退出。

但是根据googleCode上的这个问题,其他人正在成功地做到这一点。

4

2 回答 2

0

好的,所以添加 tabIndex 确实有效。对于editTextCell,我为(通常只是safehtml渲染的)文本添加了一个新模板,如下所示:

interface TemplateBasic extends SafeHtmlTemplates {
        @Template("<Label tabindex=\"{1}\">{0}</Label>")
        SafeHtml input(String value, String index);
      }

然后在设置时渲染...

else if (value != null) {
      SafeHtml html = renderer.render(value);
      sb.append(html) );
}

相反,我使用

else if (value != null) {
      SafeHtml html = renderer.render(value);
      sb.append(templatebasic.input(html.asString(), Integer.toString( context.getIndex() )) );
    }

这也适用于复选框单元格;覆盖渲染器不使用 tabIndex=-1 的静态定义的 INPUT_CHECKED/UNCHECKED

但我仍在思考/希望可能有更好的方法....

于 2011-07-05T05:14:13.240 回答
0

您可以创建一个新单元格。或者,您可以向 CellTable 添加一些脚本来处理 TAB 和 SHIFT+TAB。

通过添加选项卡处理程序扩展 CellTable 来实现这一点将满足您的需求。请参阅此链接

于 2014-03-09T20:11:00.253 回答