Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Slider скинизация. Не увеличивается высота у sliderTrackSkin (http://www.flasher.ru/forum/showthread.php?t=147141)

djyamato 26.11.2010 22:49

Slider скинизация. Не увеличивается высота у sliderTrackSkin
 
Вложений: 2
Здравствуйте
Нужно мне заскинировать слайдер
в библиотеку положил мувики для скинов

Написал в коде
Код AS3:

mySlider.setStyle("sliderTrackSkin",my_SliderTrackSkin);
mySlider.setStyle("sliderTrackDisabledSkin",my_SliderTrackSkin);
mySlider.setStyle("thumbUpSkin",my_SliderThumbSkin);
mySlider.setStyle("thumbOverSkin",my_SliderThumbSkin);
mySlider.setStyle("thumbDownSkin",my_SliderThumbSkin);
mySlider.setStyle("thumbDisabledSkin",my_SliderThumbSkin);
mySlider.setStyle("tickSkin",my_SliderTickSkin);

Высота у sliderTrackSkin как была 2 пикселя так и осталась а мне нужно чтобы трак высотой был как у мувика скина, да и Thumb вдлину не такой какой нужно

Что я недоделал, подскажите пожалуйста

GemiBillyBob 27.11.2010 02:57

Изменения данных параметров делаются расширением классов соответственно SliderThumb и SliderTrack. Я правда для флекса делал, но изменение высота трэка там получилось у меня так (тут ещё картинки для краев трека и серединка):

Код AS3:

package ui.classes
{
        import mx.core.BitmapAsset;
        import mx.core.UIComponent;
 
        public class HSlider4Track extends UIComponent
        {
 
                [Embed(source="slider/HSLider_Track_LeftSide.png")]
        [Bindable]
        private var imgHSliderLeft:Class;
                internal var imgHSliderLeftBitmap:BitmapAsset = new imgHSliderLeft() as BitmapAsset;
 
                [Embed(source="slider/HSLider_Track_RightSide.png")]
        [Bindable]
        private var imgHSliderRight:Class;
                internal var imgHSliderRightBitmap:BitmapAsset = new imgHSliderRight() as BitmapAsset;
 
                [Embed(source="slider/HSLider_Track_Middle.png")]
        [Bindable]
        private var imgHSliderMiddle:Class;
                internal var imgHSliderMiddleBitmap:BitmapAsset = new imgHSliderMiddle() as BitmapAsset;
 
 
                public function HSlider4Track()
                {
 
                }
 
 
                override public function get height():Number{
                    return 10;
                }
 
 
        override protected function updateDisplayList(unscaledWidth:Number, unscaledHeight:Number):void{
            super.updateDisplayList(unscaledWidth, unscaledHeight);
 
            imgHSliderMiddleBitmap.x=0;
            imgHSliderMiddleBitmap.width=unscaledWidth;
            imgHSliderLeftBitmap.x=0;
            imgHSliderRightBitmap.x=unscaledWidth-10;
 
 
            this.addChild(imgHSliderMiddleBitmap);
            this.addChild(imgHSliderLeftBitmap);
            this.addChild(imgHSliderRightBitmap);
 
          }
        }
}

Пример какой-то левый получился((, с утра поставлю получше, но насчёт тумбы — http://blog.flexexamples.com/2007/09...ls-thumb-skin/.

djyamato 27.11.2010 09:18

Вложений: 1
Спасибо, решил уже задачу
Расширил UIComponent своими классами скинов
В каждом вызвал классы мувиков из библиотеки
Вот такой слайдер получился
только, почему-то вместо swf скачивается html :)


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

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