GWT的一些控件并不直接支持某些事件,如双击事件,那么如何让其支持呢。这里我用为com.google.gwt.user.client.ui.Image添加鼠标双击事件处理来举个例子:
在构造函数中加上
public Image() {
sinkEvents(Event.ONDBLCLICK);
DoubleClickHandler handler = new DoubleClickHandler() {
@Override
public void onDoubleClick(DoubleClickEvent event) {
}
};
this.addHandler(handler, DoubleClickEvent.getType());
}
第二种方法
Html html = new Html() {
@Override
public void onBrowserEvent(Event event) {
switch(DOM.eventGetType(event)) {
case Event.ONCLICK:
MyAsyncCallback<Trms_user> callback = new MyAsyncCallback<Trms_user>() {
@Override
public void onSuccess(Trms_user user) {
if(user != null) {
GlobalVariable.setUser(user);
afterGetUser(user);
}
}
};
ServiceContext.commonSvc.getUser(callback);
break;
}
}
};
html.sinkEvents(Event.ONCLICK);
html.setSize(60, 25);
html.setStyleAttribute("cursor", "pointer");
html.setPosition(22, 455);