0

我在我的项目中使用 GWT-Platform,我想检查一下 Widget 调用了什么 Handler,例如 BlurHandler。

我的问题的原因如下。这个 BlurHandler 由四个 TextField 注册。

@Override
public void addFormatTextBoxListener(BlurHandler handler) {
    tbAlt.addBlurHandler(handler);
    tbLat.addBlurHandler(handler);
    tbMedida.addBlurHandler(handler);
    tbLong.addBlurHandler(handler);
}

在我的演示者中,我想找到哪个字段(小部件)失去了焦点(BlurEvent 的结果)。

getView().addFormatTextBoxListener(new BlurHandler() {
        @Override
        public void onBlur(BlurEvent event) {
            doFormatTextBox();
        }
    });
private void doFormatTextBox() {
    //who called me???
}

当四个 Widget 之一失去焦点时,将调用 doFormatTextBox 方法。但是什么 Widget 失去了焦点?

4

1 回答 1

1

重新添加事件 API (http://google-web-toolkit.googlecode.com/svn/javadoc/1.5/com/google/gwt/user/client/Event.html) 它看起来好像接缝Element e1 = event.getTarget() 然后做if (e1.equals(widget1.getElement())){//do stuff...}应该工作。

这是假设 BlurEvent 扩展com.google.gwt.user.client.Event,我不完全确定。

于 2012-12-03T02:53:43.313 回答