我在我的项目中使用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);
}
在我的Presenter中,我想找到哪个字段(Widget)失去了焦点(BlurEvent的结果)。
getView().addFormatTextBoxListener(new BlurHandler() {
@Override
public void onBlur(BlurEvent event) {
doFormatTextBox();
}
});
private void doFormatTextBox() {
//who called me???
}
当四个Widget中的一个失去焦点时,将调用doFormatTextBox方法。但Widget失去了什么?
答案 0 :(得分: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
,我不完全确定。