PDA

Просмотр полной версии : Скинирование скролла


BigDan
10.06.2008, 23:27
Как можно проскинировать скролл у канваса(например)?

Если нельзя скинировать скролл готового компонента, то как прикрепить скролл к моему компоненту(основа - canvas)?

moron
11.06.2008, 11:28
Надо изменить стили "horizontalScrollBarStyleName" и "verticalScrollBarStyleName" (см. ScrollBar.as)
или так:
var myCanvas:Canvas = new Canvas();
myCanvas.horizontalScrollBar = new MyHorizontalScrollBar();
myCanvas.verticalScrollBar = new MyVerticalScrollBar();


p.s. смотри функцию styleChanged() в файле Container.as

moron
11.06.2008, 13:11
Пример в mxml с использованием стилей:
<mx:Style>
.myScrollBarStyle {
thumbOffset: 7;
trackColors: #00FF00, #0000FF;
}
</mx:Style>
<mx:HBox width="150" height="50" horizontalScrollBarStyleName="myScrollBarStyle">
<mx:Label text="This is а very looooooooooooooooooooooooooooooooooooooooooooooooooooooooooong string"/>
</mx:HBox>

Borman2000
11.06.2008, 13:14
Например, в .css пишешь

.fsVerticalScrollBar {
downArrowSkin: Embed(source="/assets/ScrollBar/downArrow.png");
upArrowSkin: Embed(source="/assets/ScrollBar/upArrow.png");
thumbSkin: Embed(source="/assets/ScrollBar/thumb.png");
/*
downArrowUpSkin: Embed(source="/assets/ScrollBar/downArrow.png");
downArrowOverSkin: Embed(source="/assets/ScrollBar/downArrow.png");
downArrowDownSkin: Embed(source="/assets/ScrollBar/downArrow.png");
downArrowDisabledSkin: Embed(source="/assets/ScrollBar/downArrow.png");
upArrowUpSkin: Embed(source="/assets/ScrollBar/upArrow.png");
upArrowOverSkin: Embed(source="/assets/ScrollBar/upArrow.png");
upArrowDownSkin: Embed(source="/assets/ScrollBar/upArrow.png");
upArrowDisabledSkin: Embed(source="/assets/ScrollBar/upArrow.png");
thumbDownSkin: Embed(source="/assets/ScrollBar/thumb.png");
thumbUpSkin: Embed(source="/assets/ScrollBar/thumb.png");
thumbOverSkin: Embed(source="/assets/ScrollBar/thumb.png");
*/
trackSkin: Embed(source="/assets/ScrollBar/scrolltrack.png");
trackDisabledSkin: Embed(source="/assets/ScrollBar/scrolltrack.png");
thumbOffset: 0;
}

Картинки соответственно - каждый элемент скролла в соответствующем состоянии.

В свойствах компонента соответственно verticalScrollBarStyleName="fsVerticalScrollBar"

BigDan
11.06.2008, 13:28
огромное спасибо!