2012-07-25 65 views
3

我想在GWT中创建一个可扩展和可选的行元素。此行包含一个展开图标,我可以点击展开该行。我也可以点击每一行来选择它。正确接收点击事件

我的问题是,如果我点击展开图标,我总是会触发行选择事件,我不想这样做。我如何吸收点击事件,以便如果我点击展开图标,只会展开展开,而不是选择?

绿色行被选中:

A row selected

当我展开一排我也触发与点击的选择,我的选择移动(坏):

enter image description here

这是我想要的:我扩大与加号图标,没有改变的选择(耶!):

enter image description here

我试图用expandIcon.sinkEvent(Event.ONCLICK);但它没有帮助。我怎样才能做到这一点?

+1

“expandIcon”是该行的子项吗?我不确定如果没有编写自己的Javascript/native方法来执行此操作,可以从父项事件中排除子项。 – 2012-07-25 16:05:07

+0

是的,该行是一个“Horizo​​ntalPanel”,图标是其中的第一个小部件。 – Croo 2012-07-25 16:13:27

回答

5

为了防止点击事件冒泡到父窗口小部件,您需要在expandIcon级别处理stopPropagation()

+0

正是我在找的东西。谢谢! – Croo 2012-07-27 08:05:01