Olá pessoal,

estou com um problema ao vincular uma barra de rolagem de um
componente em outro por meio de bindings.
Gostaria que funcionasse mais ou menos igual a esse aqui
http://flexlib.googlecode.com/svn/trunk/examples/SchedulingFramework/ScheduleViewer6_Sample.swf
Só que a quantidade de artefatos e classes que é gerado para ele
funcionar nesse exemplo é muito grande, e não sei se há real
necessidade de eu replicar tudo isso.

Montei um exemplo para poder ser visualizado. Ele funciona ok. Único
problema é a rolagem, que ao começar a mexer, ele parece se perder no
List e não fica correto.

Alguém já passou por isso?

Segue abaixo um código para simular o problema e gerar os dados
aleatórios e preencher o provider.

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml";
        layout="absolute"
        backgroundColor="0xFFFFFF"
        creationComplete="addRandomItems()">

        <mx:Script>
                <![CDATA[
                        import mx.collections.ArrayCollection;
                        import mx.utils.ObjectUtil;

                        private function addRandomItems():void {
                                var provider:ArrayCollection = new 
ArrayCollection();

                                for (var i:int = 0; i < 100; i++){
                                        var o:Object = new Object();
                                        var children:Array = [];
                                        var incYear:int = 0;

                                        incYear += i % 2 == 0 ? 1 : 0;

                                        o.description = "Teste " + i ;

                                        for (var j:int = 0; j < 3; j++){
                                                var xyz:Object = new Object();

                                                do {
                                                        xyz.startDate = new 
Date(2008 + incYear , Math.random()*10,
Math.random()*31);
                                                        xyz.endDate = new 
Date(2008 + incYear, Math.random()*11,
Math.random()*31);
                                                        xyz.color = 
Math.random() * 0xFFFFFF;

                                                        if (xyz.startDate.date 
== 31 && xyz.startDate.month == 11){
                                                                
xyz.startDate.date++;
                                                        }

                                                        if (xyz.endDate.date == 
31 && xyz.endDate.month == 11){
                                                                
xyz.endDate.date++;
                                                        }
                                                } while 
(ObjectUtil.dateCompare(xyz.startDate, xyz.endDate) !=
-1 );

                                                children.push(xyz);
                                        }

                                        o.children = children;
                                        provider.addItem(o);
                                }
                                descriptionList.dataProvider = provider;
                        }
                ]]>
        </mx:Script>

        <mx:List id="descriptionList"
                x="10"
                y="10"
                height="738"
                width="300"
                rowHeight="25"
                labelField="description"
                horizontalScrollPolicy="off"
                verticalScrollPolicy="off"
                verticalScrollPosition="{viewer.verticalScrollPosition}"/>

        <mx:Canvas id="viewer" x="318" y="10" width="840" height="738">
                <mx:Canvas height="2500" width="2500" />
        </mx:Canvas>


</mx:Application>



-- 
Você recebeu esta mensagem porque está inscrito na lista "flexdev"
Para enviar uma mensagem, envie um e-mail para [email protected]
Para sair da lista, envie um email em branco para 
[email protected]
Mais opções estão disponíveis em http://groups.google.com/group/flexdev

Responder a