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

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

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

блогер
Регистрация: Sep 2008
Адрес: Менск
Сообщений: 586
Записей в блоге: 1
Отправить сообщение для incvizitor с помощью Skype™
По умолчанию Инвертировать индексы элементов посредством VerticalLayout

Элементы налазять друг на друга (gap=-10), проблема в том что первый элемент получается ниже остальных, а надо наоборот. Написал небольшой класс который реверсает элементы, но почему то падает очень инофрмативный эксепшн:

Цитата:
Error: null
Вот код:

Код AS3:
package by.brovar.postmaker.ui {
import flash.display.DisplayObject;
 
import mx.core.ILayoutElement;
 
import spark.components.supportClasses.GroupBase;
import spark.layouts.VerticalLayout;
 
public class ReversedIndexVerticalLayout extends VerticalLayout{
 
    override public function updateDisplayList(unscaledWidth:Number, unscaledHeight:Number):void {
        super.updateDisplayList(unscaledWidth, unscaledHeight);
        _reverseLayoutIndexOrder();
    }
 
    private function _reverseLayoutIndexOrder():void {
        var layoutTarget:GroupBase = target;
        var count:int = layoutTarget.numElements;
        var targetElementList:Vector.<ILayoutElement> = new Vector.<ILayoutElement>();
        for (var i:int = 0; i < count; i++) {
            targetElementList.push(layoutTarget.getElementAt(i));
        }
        for each(var targetElement:ILayoutElement in targetElementList) {
            layoutTarget.setChildIndex(targetElement as DisplayObject, layoutTarget.numElements);
        }
    }
}
}
Падает на строчке:

Код AS3:
layoutTarget.setChildIndex(targetElement as DisplayObject, layoutTarget.numElements);
__________________
ranga

Старый 20.07.2012, 23:36
Inet_PC вне форума Посмотреть профиль Отправить личное сообщение для Inet_PC Посетить домашнюю страницу Inet_PC Найти все сообщения от Inet_PC
  № 2  
Ответить с цитированием
Inet_PC
 
Аватар для Inet_PC

Регистрация: Feb 2009
Адрес: Гы...поди, найди!
Сообщений: 853
Записей в блоге: 1
Если Вы хотите, чтобы первый элемент был выше второго в списке отображения (если я Вас правильно понял), то Вам подойдет свойство depth.
Код AS3:
<s:VGroup gap="-10">
 
	<s:Button label="label" depth="3"/>
	<s:Button label="label" depth="2"/>
	<s:Button label="label" depth="1"/>
 
</s:VGroup>
__________________
http://www.chessmax.ru

Создать новую тему Ответ Часовой пояс GMT +4, время: 01:24.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

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

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


 


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


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