Гибкость: invalidateData

У меня проблемы с обновлением компонентов при изменении параметров:

package mycompany
{

    import flash.events.Event;
    import mx.events.SliderEvent;
    import mx.controls.HSlider;
    import mx.controls.sliderClasses.Slider;

    public class FromToSlider extends HSlider
    {

        /* from: */

        private var _from:int;

        [Bindable]
        public function get from():int
        {
            return _from;
        }

        public function set from(value:int):void
        {
            this._from = value;
            this.values[0] = value;
            invalidateProperties();
        }

        /* //from */

        /* to: */

        private var _to:int;

        [Bindable]
        public function get to():int
        {
            return _to;
        }

        public function set to(value:int):void
        {
            this._to = value;
            this.values[1] = value;
        }

        /* //to */

        override public function initialize():void
        {
            super.initialize();
            addEventListener(SliderEvent.CHANGE, handleChange, false, 0, true);
        }

        protected function handleChange(event:SliderEvent):void
        {
            var ct:Slider=Slider(event.currentTarget);
            this.from = ct.values[0];
            this.to = ct.values[1];
        }

    }
}

Когда я устанавливаю «от» и «до», большие пальцы не обновляются. Я пробовал invalidateProperties, но это не сработало.


person Niels Bosma    schedule 15.12.2008    source источник


Ответы (1)


Добавьте вызов invalidateDisplayList () после invalidateProperties (). Это гарантирует, что Flex перерисовывает компонент в следующем ключевом кадре.

Вы также должны добавить то же самое к функции 'set to ()'.

person Spikefu    schedule 15.12.2008