2012-10-09 90 views
0

我需要在可見時顯示垂直滾動條,而不是右側(默認),但是在屏幕的左側。 該應用程序使用Java編寫,運行在Websphere上,使用Flex 3中的UI。 帶滾動條的容器是VBox,VBox擴展自定義對象,另一種情況是DataGrid。 以下是我到目前爲止所嘗試的:在Flex3 UI中移動滾動條

這會在初始渲染時繪製左側的滾動條,然後立即將其向右移動。

if(verticalScrollBar && verticalScrollBar.visible) 
    { 
     verticalScrollBar.x = -verticalScrollBar.width; 
    } 

這似乎完全忽視:

protected override function updateDisplayList(unscaledWidth:Number, unscaledHeight:Number):void 
{ 
    super.updateDisplayList(unscaledWidth, unscaledHeight); 
    if(verticalScrollBar && verticalScrollBar.visible) 
    { 
     verticalScrollBar.x = -verticalScrollBar.width; 
    } 
} 

也試過設置

verticalScrollBar.x = 0; 

沒有有所作爲。

這些是我發現的唯一建議onlineStackoverflow
這怎麼辦?

+0

易與FLEX4餡餅。 Flex3(afaik)無法完成 - 沒有大的黑客攻擊。 – RIAstar

+0

這太糟糕了。感謝您的評論! – jprusakova

回答

0

嘗試這樣的事:

override public function validateDisplayList():void { 
    super.validateDisplayList(); 
    if (verticalScrollBar && verticalScrollBar.visible) { 
     verticalScrollBar.x = 0; 
    } 
} 
+0

不做任何事情:( – jprusakova

+0

我希望你注意到,這不是'updateDisplayList'方法,而是'validateDisplayList'?它對我很有效,除此之外我不知道如何幫助你。 – 2DH

+0

是的,我改變了按照你的建議重寫的方法名稱,但它看起來並沒有被調用。 – jprusakova