鼠标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。