Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 30.10.2011, 19:17
Acrossfy вне форума Посмотреть профиль Отправить личное сообщение для Acrossfy Найти все сообщения от Acrossfy
  № 1  
Ответить с цитированием
Acrossfy
 
Аватар для Acrossfy

Регистрация: Feb 2009
Сообщений: 180
По умолчанию Скиннинг scrollBar'а, не получается изменить размер "стрелок"

Здравствуйте, у меня в сцене scrollPane компонент. Пытаюсь стилизовать его scrollBar.
Делаю это так:
Код AS3:
public var pane:ScrollPane;
pane.setStyle('upArrowUpSkin', ArrowUp_upSkin);
 
// ----------
 
public class ArrowUp_upSkin extends MovieClip
{
	public function ArrowUp_upSkin()
	{
		var btn:MovieClip = new ScrollArrowUp_upSkin();
		addChild(btn);
 
		//пробую так
		btn.width = 33;
		btn.height = 33;
		//и так
		btn.parent.width = 33;
		btn.parent.height = 33;
		//и даже так
		btn.getChildAt(0).width = 33;
		btn.getChildAt(0).height = 33;
 
		//Трейс всех этих параметров выше подтвеждает их изменение, но кнопки все равно остаются маленькими – дефолтный размер (16х16)
 
		//Код ниже например работает нормально
		btn.parent.x = -430;
		btn.parent.y = 300;
	}
}
Добавлено через 4 часа 46 минут
Собственно таким способом не получается тоже:
Код AS3:
var newSkinClip:MovieClip = new MovieClip();
newSkinClip.graphics.beginFill(uint(0xff0000), 1);
newSkinClip.graphics.drawRect(0,0,50,50);
newSkinClip.graphics.endFill();
 
pane.setStyle('upArrowUpSkin', newSkinClip);
Рисуется красный квадрат, размером 16 на 16. Как удалось выяснить из трейсов, создаваемый мною клип скина ложится внутрь BaseButton, которая лежит непосредственно в ScrollBar'e. Но как добраться до нее(BaseButton) совсем не понятно. Многие конструкции самопальные пробовал, не получалось.

Добавлено через 4 часа 58 минут
Вообщем докопался я до нее следующим способом:
Код AS3:
var newSkinClip:MovieClip = new MovieClip();
newSkinClip.graphics.beginFill(uint(0xff0000), 1);
newSkinClip.graphics.drawRect(0,0,50,50);
newSkinClip.graphics.endFill();
newSkinClip.addEventListener(Event.ADDED, setHeight); //добавил слушатель
 
pane.setStyle('upArrowUpSkin', newSkinClip);
 
// ----------
 
private function setHeight(e:Event) //сделал дело
{
	((e.target as MovieClip).parent as BaseButton).height = 50;
	((e.target as MovieClip).parent as BaseButton).width = 50;
}


Последний раз редактировалось Acrossfy; 31.10.2011 в 00:18.
Создать новую тему Ответ Часовой пояс GMT +4, время: 11:10.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Теги
ScrollBar , scrollpane , skins

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


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


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