2013-04-24 132 views
0

我試圖在Flash CS4中使用內置的AS3滑塊組件設置自定義外觀。我有以下代碼,但設置myslider.widthmyslider.height似乎沒有任何影響。滑塊仍然以默認的寬度和高度顯示,並且我的自定義sliderTrackSkin被縮小。設置Flash AS3 Slider組件的寬度和高度

import fl.controls.Slider; 
import fl.controls.SliderDirection; 
import fl.events.SliderEvent; 

var myslider:Slider = new Slider(); 
myslider.direction = SliderDirection.VERTICAL; 
myslider.width = 43; 
myslider.height = 110; 
myslider.minimum = 1; 
myslider.maximum = 90; 
myslider.value = 30; 
myslider.snapInterval = 1; 
myslider.liveDragging = true; 
myslider.addEventListener(SliderEvent.CHANGE, slider_change); 
myslider.move(640, 60); 
myslider.setStyle("thumbUpSkin", thumb1); 
myslider.setStyle("thumbDownSkin", thumb1); 
myslider.setStyle("thumbOverSkin", thumb1); 
myslider.setStyle("sliderTrackSkin", slidertrack1); 
addChild(myslider); 

我將不勝感激任何意見。謝謝。

回答

1

事實證明,myslider.widthmyslider.height已對父級生效,但滑塊組件的大小和軌跡未被調整大小。我不得不手動調整拇指和跟蹤這樣的:

var mysliderthumb = Sprite(myslider.getChildAt(1)); 
mysliderthumb.height = 34; 
mysliderthumb.width = 15; 

var myslidertrack = Sprite(myslider.getChildAt(0)); 
myslidertrack.height = 15; 
myslidertrack.width = 100; 

此外,因爲我有myslider.direction = SliderDirection.VERTICAL,拇指和軌道正在旋轉90度,所以我不得不相應翻轉的寬度和高度。

0

嘗試在設置所有屬性並應用外觀後調用myslider.validateNow()方法。

+0

謝謝,但這不是問題。不過,我明白了。 – nullability 2013-04-25 15:42:09