在GWT ScrollPanel中使用MouseWheel进行水平滚动?

时间:2014-01-22 15:10:20

标签: java javascript html gwt

我有一个带水平滚动条的GWT ScrollPanel,即

overflow-y: scroll;

如何在滚动条上绑定MouseWheel事件,以便在移动鼠标滚轮时执行水平滚动?

1 个答案:

答案 0 :(得分:1)

请参阅此示例,了解如何收听鼠标滚轮事件: http://examples.roughian.com/index.htm#Listeners~MouseWheelListener

而不是标签扩展ScrollPanel

而不是setText来电setHorizontalScrollPosition(int position)

public void onMouseWheel(Widget sender, MouseWheelVelocity velocity)
{
    DOM.eventPreventDefault(DOM.eventGetCurrentEvent()); //prevent vertical scroll
    int positionDelta = velocity.getDeltaY() * 30;
    int newPosition = getHorizontalScrollPosition() - positionDelta;
    setHorizontalScrollPosition(newPosition);   
}

另见How to do a horizontal scroll on mouse wheel scroll?