onClick / onSelected GWT CellList中按钮的事件

时间:2012-05-04 09:10:57

标签: gwt

我有一个GWT CellList。每个Cell都有一个图像,两个标签和一个按钮。

每当用户单击一个单元格时,就会发生onSelected事件。

如果用户点击按钮,我想触发onClick事件, onSelected如果单击其他区域(不在按钮内)。

有可能吗?

2 个答案:

答案 0 :(得分:1)

最简单的方法是覆盖onBrowserEvent(...)的{​​{1}}方法。以下是我如何实现它来处理AbstractCell<C>元素上的点击事件:

<a/>

单元格模板如下所示:

@Override
public void onBrowserEvent(Context context, Element parent, BIBonusDto value, NativeEvent event,
        ValueUpdater<BIBonusDto> valueUpdater) {
    super.onBrowserEvent(context, parent, value, event, valueUpdater);
    if ("click".equals(event.getType())) {
        EventTarget eventTarget = event.getEventTarget();
        if (!Element.is(eventTarget)) {
            return;
        }
        if (parent.getElementsByTagName("a").getItem(0).isOrHasChild(Element.as(eventTarget))) {
            if (valueUpdater != null)
                valueUpdater.update(value);
        }
    }
}

我们必须检查事件是否是正确的类型,如果它是一个元素,那么我们可以检查它是否是正确的,并将操作委托给值更新程序回调。

答案 1 :(得分:0)

我想你想要这样的东西, http://gwt.google.com/samples/Showcase/Showcase.html#!CwCellSampler

您可以拥有ActionCell或ButtonCell。

请告诉我这是否符合您的目的。