Flex设置scroller的速度

Flex每个Scroller都有一个mouseWheelChanging方法,当滚动鼠标中轮的时候会调用,而后就可以在这个函数中进行判断,如下:

假设我的滚动条id = mainScroller

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
protected function mainScroller _mouseWheelChangingHandler(event:FlexMouseEvent):void
{
event.preventDefault();
var modifier:int = 5;
var delta:Number = Number(event.delta) * modifier;
var viewport:IViewport = mainScroller.verticalScrollBar.viewport;
var vPos:Number = viewport.verticalScrollPosition;
var maximum:Number = mainScroller.verticalScrollBar.maximum;

if (delta < 0) 
{
mainScroller.verticalScrollBar.viewport.verticalScrollPosition = Math.min(vPos - delta, maximum) ;        
}
else
{
mainScroller.verticalScrollBar.viewport.verticalScrollPosition = Math.max(vPos - delta, 0);
}
}