鼠标hover在GWT 1.7中的FlexTable监听器?

如何在GWT 1.7中为小部件添加事件监听器或处理程序?

我知道在SO上有一些问题,但似乎它们已经过时了。 例如(忽略在CSS中存在:hover的事实)如何将例如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。 因此,例如,对于hover,您将添加MouseOverHandler和MouseOutHandler。 FlexTable本身不实现这些接口,因此您可能希望在FlexTable中包含的小部件上实现它。 例如,

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

同样,添加MouseOutHandler。