我想指定金額與VScrollBar滾動。 所以在Flex 3中,我們有「lineScrollSize」,但在Flex 4中如何調用此屬性? 我以爲它VScrolBar.stepSize - 但它不會做任何事情。Flex 4和ScrollBar stepSize
有人請幫助我。 我只是想讓我的內容在鼠標滾輪上滾動得更快。
我想指定金額與VScrollBar滾動。 所以在Flex 3中,我們有「lineScrollSize」,但在Flex 4中如何調用此屬性? 我以爲它VScrolBar.stepSize - 但它不會做任何事情。Flex 4和ScrollBar stepSize
有人請幫助我。 我只是想讓我的內容在鼠標滾輪上滾動得更快。
查看LayoutBase.getVerticalScrollPositionDelta
。您可能想要繼承並覆蓋它!
這是我在我自己的佈局類做的:
override public function getVerticalScrollPositionDelta(navigationUnit:uint):Number {
var n:Number=super.getVerticalScrollPositionDelta(navigationUnit);
if (navigationUnit==NavigationUnit.DOWN || navigationUnit==NavigationUnit.UP) return 10*n;
return n;
}
還有就是如何增加stepSize的對鼠標滾輪滾動這裏一個例子: http://forums.adobe.com/message/2783736
你應該能夠取消鼠標滾輪滾動使用此增強功能稍微簡單一些: http://bugs.adobe.com/jira/browse/SDK-26432
鏈接到該錯誤的子任務有一個簡單的代碼示例,您應該可以修改,以防止鼠標滾輪滾動和打電話給你的縮放邏輯來代替:
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark">
<fx:Script>
<![CDATA[
...
private function mouseWheelChangingHandler(event:FlexMouseEvent):void {
// don't scroll by preventing default
event.preventDefault();
// instead zoom
yourZoomFunction(event.delta);
}
]]>
</fx:Script>
<s:Scroller id="scroller" width="250" height="200" mouseWheelChanging="mouseWheelChangingHandler(event)">
<s:DataGroup id="vp" dataProvider="{getDP()}" itemRenderer="spark.skins.spark.DefaultItemRenderer">
<s:layout>
<s:VerticalLayout gap="0" horizontalAlign="justify" />
</s:layout>
</s:DataGroup>
</s:Scroller>
</s:Application>
在此線程的討論也可能對你有用: http://forums.adobe.com/message/3393852#3393852
,我想出了一個解決辦法,這需要子類化/擴展滾動條的皮膚。
這種方式,你只需要使用自定義的滾動條,而不是修改每個視口的滾動條內
我把它放在上的Flex SDK的bug,這顯然不應該被忽視的開始與
評論
是否有可能禁用鼠標滾輪滾動(我想用鼠標滾輪放大/縮小)? – 2010-04-02 10:11:23
我想你可能會返回零,但這可能是一件骯髒的事情... – Quentin 2010-04-07 20:59:27
要使用此方法通過在名爲UpdatedLayout的類中擴展BasicLayout,您需要添加「 」由您的滾輪包含的組。 –
2013-02-07 17:10:25