Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   Изменение ширины мувиклипа (http://www.flasher.ru/forum/showthread.php?t=170278)

tgonta 21.10.2011 16:26

Изменение ширины мувиклипа
 
У меня есть такой код:
Код AS1/AS2:

onEnterFrame = function(){
        var x_num:Number = scroller.scroll_drag._x
 
        scroller.scroll_drag.onPress = function(){
                startDrag(this,false,0,this._y,120,this._y)
                x_num = scroller.scroll_drag._x
                scroller.scroll_fill.width = x_num
        }
        scroller.scroll_drag.onRelease = scroller.scroll_drag.onReleaseOutside = function(){
                stopDrag()
        }
        onMouseMove = function(){
                updateAfterEvent()
        }
        number_txt.text = x_num
}

Почему может не меняться ширина?

mooncar 21.10.2011 16:28

Ох, вы понимаете, как он теоретически работает? Сперва разберите эту кашу, зачем у вас все это внутри onEnterFrame?
Каждую секунду несколько десятков раз (в зависимости от FPS) у вас внутри этого обработчика переопределяются функции.
Вынимайте оттуда все, оставляйте только реально то, что должно изменяться постоянно.

tgonta 21.10.2011 17:02

Вложений: 1
Прикрепил исходник.

mooncar 21.10.2011 17:23

1. Код.
Код AS1/AS2:

onEnterFrame = function()
{
        var x_num:Number = scroller.scroll_drag._x;
        number_txt.text = x_num;
        scroller.scroll_fill._width = x_num;
};
 
scroller.scroll_drag.onPress = function()
{
        startDrag(this, false, 0, this._y, 120, this._y)
};
 
scroller.scroll_drag.onRelease = scroller.scroll_drag.onReleaseOutside = function()
{
        stopDrag();
};
 
onMouseMove = function()
{
        updateAfterEvent();
};

2. Имя (Instance name) мувика scroll_fill не прописано, зайдите в его свойства и пропишите.
3. Ошибка была : scroller.scroll_fill.width, надо scroller.scroll_fill._width (в п.1. исправлено)
4. Дальше разбирайтесь с масштабированием, началом координат ит.д..

tgonta 21.10.2011 17:42

> Дальше разбирайтесь с масштабированием, началом координат ит.д..

Прошу прощения за нубство, но каким образом можно это сделать? Прописать Y?

Добавлено через 3 часа 13 минут
Всё, всё, понял.


Часовой пояс GMT +4, время: 05:38.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.