1

我想向单元格表添加一个特殊的选择模型。基本上我想要的功能是在位于左侧的表格上选择一行,相应的表格将在右侧弹出。我知道很多人会将 singleSelectionModel 与 SelectionChangeHandler 一起使用。但是这种方法存在问题。

例如,如果我选择表格上的第 1 行。表格弹出。我通过单击关闭按钮关闭表单。稍后,我再次选择第 1 行,没有触发该事件,因为它是 SelectionChangeHandler。在执行此操作之前,我必须选择其他行。这不好。

所以我认为有几种方法可以做到这一点:

  1. 在我选择行后立即取消选择该行。
  2. 使用点击处理程序触发事件(弹出表单)
  3. 使用其他选择模型和其他选择处理程序来执行此操作。(虽然我对此一无所知)

所以我的问题是,

  1. 有谁知道我可以为此使用哪种其他选择处理程序。
  2. 如果我在 celltable 上使用 click 处理程序,会有什么问题吗?

我只是想了解更多。因此,任何想法都会受到欢迎。非常感谢。

此致。

4

2 回答 2

1

使用NoSelectionModel. 选择行后,它不会更新表格视图。也就是说,即使选择了同一行,也会触发更改事件。

//Here 'Contact' is the datatype of the record
final NoSelectionModel<Contact> selModel = new NoSelectionModel<Contact>();
selModel.addSelectionChangeHandler(new Handler() {
    @Override
    public void onSelectionChange(SelectionChangeEvent event) {
        Contact clickedObject = selModel.getLastSelectedObject();
        GWT.log("Selected " + clickedObject.name);
    }
});
table.setSelectionModel(selModel);
于 2012-06-21T03:50:06.780 回答
0

我在每个项目中都使用了单元格表。正如你提到的那样,手动取消选择行的更好方法。并使更改css,例如选定单元格表的行在选择后看起来没有改变。

于 2012-06-21T06:08:29.733 回答