2013-01-24 65 views
1

我嘗試定製內置的滾動條組件閃光燈拇指圖形的。具體來說,我需要自定義滾動條的大拇指以具有固定的高度和寬度。尺寸上的Flash滾動條

這就是我現在所擁有的。拇指高度自行調整。我需要修正拇指的高度。

current state

我試圖實現(一個固定高度的大拇指):

what I'm trying to achieve

向我怎麼可以設置Flash中的拇指大小的任何指針可以理解的。

回答

3

沒有簡單的方法來做到這一點,我表示Flash CS6滾動條不支持此功能。在受保護的方法fl.controls.ScrollBar拇指更新的高度:

protected function updateThumb():void { 
     var per:Number = _maxScrollPosition - _minScrollPosition + _pageSize; 
     if (track.height <= 12 || _maxScrollPosition <= _minScrollPosition || (per == 0 || isNaN(per))) { 
      thumb.height = 12; 
      thumb.visible = false; 
     } else { 
      thumb.height = Math.max(13,_pageSize/per * track.height); 
      thumb.y = track.y+(track.height-thumb.height)*((_scrollPosition-_minScrollPosition)/(_maxScrollPosition-_minScrollPosition)); 
      thumb.visible = enabled; 
     } 
    } 

,正如你可以看到沒有任何標誌跳過的thumb.height設置在else塊。 的可能的解決方案可以是延伸ScrollPane並重寫configUI方法 - 並添加自定義CustomScrollPane(擴展滾動條和覆蓋updateThumb方法),而不是創建_verticalScrollBar:ScrollBar

另一個解決方案可以用你自己的fl.controls.ScrollPane代替原來的fl ScrollPane類,在你的swf的主ApplicationDomain中。但要做到這一點,你必須組織類加載在自己的類的FL那些是你必須動態地加載在外部主權財富基金的所有類之前加載一個這樣的方式。