1

我有一个扩展 GXT ComboBox 的类:

public class RemoteCombo<Row> extends ComboBox<Row> {
    ...
}

后来,我在一些代码中使用它:

@UiField(provided = true)
RemoteCombo<Town> town;

@UiHandler("town")
public void onTownValueChanged(ValueChangeEvent<Town> event) {
  ...
}

我收到以下错误:

[ERROR] Field 'town' does not have an 'addValueChangeHandler' method associated.

这是错误的,因为townis a RemoteCombo, RemoteComboextends ComboBox,ComboBox有这个方法。

如果我在RemoteCombo.java中委托这个方法,它可以工作:

public HandlerRegistration addValueChangeHandler(ValueChangeHandler<Row> handler){
  return super.addValueChangeHandler(handler);
}

尽管如此,我觉得很奇怪我必须委托我需要使用的每个方法@UiHandler。我做错了什么还是一个错误?

4

1 回答 1

2

我想,你做得对。

看看 Colin Alworth 写了什么(在线程的末尾)。

http://www.sencha.com/forum/showthread.php?240102-How-do-I-add-a-selection-listener-to-a-SimpleComboBox&langid=4

和这里:

http://code.google.com/p/google-web-toolkit/issues/detail?id=6091

于 2013-08-30T13:01:19.693 回答