2010-02-17 3 views
0

Я новичок в ActionScripot и Flash, и я застрял со следующей проблемой:MovieClip ширина прогресс бар слишком мал по сравнению с родительским контейнером

На сцене у меня есть мувиклип (контейнер, первоначально 200px ширины), так и внутри он с прогрессивным мувиклипом (первоначально шириной 700 пикселей), масштабируется с помощью Free Transform Tool, чтобы он соответствовал родительскому контейнеру. Ширина контейнера изменяет время выполнения при изменении размера сцены.

В ActionScript У меня есть функция, которая должна установить ширину прогресс бар в соответствии с вычисленной процентного значения:

private function updateProgress(event:TimerEvent):void 
{ 
    var barWidth:int = _container.width; 
    var progress:Number = _stream.time/_stream.duration * barWidth; 
    _progressBar.width = progress;   
} 

Моя проблема заключается в том, что Progressbar даже при полном времени (100%) только на 1/4 родительского контейнера. Я предполагаю, что он исходит из оригинального размера символов.

Могу ли я исправить это программно, или я должен переделать его с помощью «дизайнера»?

Надеюсь, я разъяснил свою проблему, как я уже сказал, я новичок во Flash.

Заранее спасибо.

ответ

3

Если я правильно понимаю, ваш _progressBar имеет свой Scalex устанавливается конструктором. Что вы можете сделать, это сохранить первоначальный Scalex и изменить свою функцию:

... 
var barScaleX = _progressBar.scaleX; 
... 
private function updateProgress(event:TimerEvent):void 
{ 
    var progress:Number = _stream.time/_stream.duration; 
    _progressBar.scaleX = barScaleX * progress; 
} 

Это должно установить ширину ProgressBar в процентах от его оригинальной шкалы.

0

Попробуйте разделить BarWidth с количеством времени масштабируется или записать исходную ширину = 700px

Смежные вопросы