Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Генерация SliderEvent'a (http://www.flasher.ru/forum/showthread.php?t=134643)

Suspended 06.01.2010 20:29

Генерация SliderEvent'a
 
Здравствуйте. Повесил на слайдер обработчик
iterations_slider.addEventListener(SliderEvent.CHANGE, sliderChanged);

Всё работает для событий от юзера, но если я пытаюсь изменить свойство value, то слайдер визуально обновляется, но не генерирует события. Подскажите, как можно это исправить.

И ещё, подскажите как обратиться к слайдеру из класса MovieClip'a? Они рядом лежат на форме (или как это называется, сцене?), и собственно по событию внутри класса моего MovieClip'a мне нужно изменить значение слайдера.

Спасибо.

Добавлено через 4 часа 8 минут
Больше всего волнует теперь, как обратиться к контроллу на форме? Искал, не нашёл информации... т.е. instance name задано, это я так понимаю имя экземпляра класса, но как к этому экземпляру обратиться?

С генерацией event'ов тоже интересует.

silin 08.01.2010 10:59

для штатного слайдера можно там где меняешь value генерить и событие от его имени
Код AS3:

_slider.value = 5;
_slider.dispatchEvent(new SliderEvent(SliderEvent.CHANGE, _slider.value, "", ""));

а можно в 'своем' слайдере переписать свойство value и поместить эту операцию туда,
по сути тоже самое, но логичнее и удобнее
Код AS3:

public class MySlider extends Slider
{
        override public function set value(value:Number):void
        {
                super.value = value;
                this.dispatchEvent(new SliderEvent(SliderEvent.CHANGE, super.value, "", ""));
        }
}

чтобы обратиться из мувика (где бы он ни находился) к слайдеру, мувик должен иметь ссылку на это слайдер, подумай/придумай как ему эту ссылку передать..

loover 15.05.2010 20:46

silin, сделал также, значение изменилось, событие произошло, но ползунок остался в первоначальном положении (на нуле). можно ли его сдвинуть программно?


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

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