如何在GWT 1.7中向窗口小部件添加事件侦听器或处理程序?

我知道在SO上有一些问题,但似乎它们已经过时了。 例如(忽略在CSS中有一个:悬停的事实)如何将例如Hover侦听器添加到FlexTable?

有帮助吗?

解决方案

如果要将MouseOverHandler添加到FlexTable,请尝试:

public class MyFlexTable extends FlexTable implements MouseOverHandler, HasMouseOverHandler {
    public MyFlexTable() {
        this.addMouseOverHandler(this);
    }

    public void onMouseOver(MouseOverEvent event) {
        //do something
    }
    public HandlerRegistration addMouseOverHandler(MouseOverHandler handler) {
        return addDomHandler(handler, MouseOverEvent.getType());
    }
}

其他提示

从GWT 1.6开始,您使用Handler而不是Listeners。因此,例如,对于悬停,您将添加MouseOverHandler和MouseOutHandler。 FlexTable本身不实现这些接口,因此您可能希望在FlexTable中包含的小部件上实现它。例如,

myWidget.addMouseOverHandler(new MouseOverHandler(){
   void onMouseOver(MouseOverEvent event){
       doHovering();
    }
});

类似于添加MouseOutHandler。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top