Bar*_*rry 1 gwt event-handling
我的UI端有3个小部件(1个ListBox,2个TextBox).我想创建一个Handler,它可以处理值更改事件,如果三个小部件中的任何一个值更改,也可以创建Blur for ListBox.代码的框架将是这样的
registerHandler(new multiWidgetHandler());
private class multiWidgetHandler{
//code for handling onValueChange for 3 widgets and also onBlur for listBox
}
Run Code Online (Sandbox Code Playgroud)
我不确定如何干净利落地实施.需要帮忙.一些示例代码将不胜感激.
您可以在同一个处理程序中实现多个Handler接口,然后多次添加该处理程序.
private class MultiWidgetHandler implements ValueChangeHandler<String>, BlurHandler, ChangeHandler
{
protected void handleIt() { Window.alert("These events are so handled right now!"); }
public void onBlur(BlurEvent e) { handleIt(); }
public void onValueChange(ValueChangeEvent<String> e) { handleIt(); }
public void onChange(ChangeEvent e) { handleIt(); }
}
Run Code Online (Sandbox Code Playgroud)
...
MultiWidgetHandler handler = new MultiWidgetHandler();
listBox.addChangeHandler(handler);
listBox.addBlurHandler(handler);
textArea1.addValueChangeHandler(handler);
textArea2.addValueChangeHandler(handler);
Run Code Online (Sandbox Code Playgroud)