Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   Flex (http://www.flasher.ru/forum/forumdisplay.php?f=84)
-   -   Почему не работает принудительный скрол ? (http://www.flasher.ru/forum/showthread.php?t=152250)

Lexxx_HU 14.03.2011 17:19

Почему не работает принудительный скрол ?
 
Столкнулся с проблемой, пытаюсь после добавления элементов изменить позицию скрола, но почему то этого не происходит. в чем может проблема ?
Код AS3:

<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
                          xmlns:s="library://ns.adobe.com/flex/spark"
                          xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600" creationComplete="init();">
        <fx:Script>
                <![CDATA[
                        import mx.events.ScrollEvent;
                        public function init():void {
                                for (var i:int; i < 20; i++) {
                                        var lb:Label = new Label();
                                        lb.text = 'text text text text';
                                        idVbox.addChild(lb);
                                }
                                idVbox.verticalScrollPosition = idVbox.maxVerticalScrollPosition;
                        }
                ]]>
        </fx:Script>
        <mx:VBox width="188" height="133" x="50" y="50" id="idVbox">
        </mx:VBox>
</s:Application>


alatar 14.03.2011 19:55

В тот момент когда вы пытаетесь изменить позицию прокрутки, размеры Label еще равны 0.

Lexxx_HU 15.03.2011 11:19

так вроде меняю после цикла, то есть по идее эти элементы уже добавились.
а в какой момент нужно менять позицию ?

alatar 15.03.2011 11:31

Цитата:

то есть по идее эти элементы уже добавились.
Элементы-то добавились, но размеры их еще не известны.
Цитата:

а в какой момент нужно менять позицию ?
После UPDATE_COMPLETE.

Lexxx_HU 15.03.2011 19:56

спасибо, работает после UPDATE_COMPLETE.
но один момент, если мы скролим наверх, то все равно показывается нижняя часть, как это можно обойти ?


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

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