Hélio,

Basicamente, pelo aninhamento dos componentes da sua estrutura, para você
saber se um componente foi criado você terá que percorrer com loop cada
containner e em cada um se tiver como child outro containner percorre-lo
também testando com
"containner.hasOwnProperty<http://help.adobe.com/pt_BR/AS3LCR/Flash_10.0/Object.html#hasOwnProperty()>
("idDoTextInput")." se obtiver um resultado true é pq ele foi criado então
poderá ser manipulado. Isto é meio árduo e tem um custo para o
processamento.  Agora, se você já souber em qual containner ele está e o id
do containner você pode ir direto nele.

Está é a solução que consigo imaginar para te ajudar.

Em 5 de maio de 2010 10:11, fabiophx <[email protected]> escreveu:

> Hélio,
>    Dá uma olhada:
>
> <?xml version="1.0" encoding="utf-8"?>
> <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"; >
>        <mx:Script>
>                <![CDATA[
>                        private function testaComp():void {
>                                if (hb.getChildByName("ti")) {
>                                        trace("ti: " +
> hb.getChildByName("ti")["text"]);
>                                }
>                                if (hb.getChildByName("ti2")) {
>                                        trace("ti2: " +
> hb.getChildByName("ti2")["text"]);
>                                }
>                        }
>                ]]>
>        </mx:Script>
>
>        <mx:HBox id="hb">
>                <mx:TextInput id="ti" />
>                <mx:Button click="testaComp()" />
>        </mx:HBox>
> </mx:Application>
>
> []s
>
> Fabio da Silva
> http://www.fabiophx.blogspot.com/
>
> On 5 maio, 09:32, Helio Antonio Francisco Silva
> <[email protected]> wrote:
> > Mas gabriela e justamente isso que eu preciso e nao ta dando, eu ja
> tentei
> > mas lembra os campos vem dinamicos eu  "nao sei se eles existem ou nao na
> > minha aplicação"
> >
> > assim o:
> > if(resultadoEdit != null){
> >     for(var x:Number = 0;x<resultadoEdit.ASC5.CABECSC5.length;x++){
> >         if(this[resultadoEdit.ASC5.CABECSC5[x].CCAMPO] != null){
> >             this[resultadoEdit.ASC5.CABECSC5[x].CCAMPO].text =
> > resultadoEdit.ASC5.CABECSC5[x].CCONTEUDO;
> >         }
> >     }
> >
> > }
> >
> > resultadoEdit <- nome do array que eu recebo.
> > resultadoEdit.ASC5.CABECSC5[x].CCAMPO <- isso aqui me da o nome do
> suposto
> > textinput (caso ele existe)
> > resultadoEdit.ASC5.CABECSC5[x].CCONTEUDO <- manda o valor do textinpt;
> >
> > Problema, eu recebo 200 campos por esse array resultadoEdit mas no meu
> > painel flex so tenho 50 campos textinput,  entao eu quero testar se
> existe
> > ou nao, mas quando tento testar o campo se eu colocar um nome de campo
> que
> > nao exista no meu painel explode milhoes de erros de acesso a propriedade
> de
> > objeto que nao existe.  por isso preciso saber como testar se o textinput
> > esta criado ou nao.
> >
> > 2010/5/5 Gabriela Trindade Perry <[email protected]>
> >
> > > Helio, tenta
> >
> > > if( ! campo){
> > >  //não existe, cria o campo
> > > }
> >
> > > Ou o bom e velho try / catch
> >
> > > --
> > > 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 emhttp://groups.google.com/group/flexdev
> >
> > --
> > Desenvolvedor Web
> >
> > --
> > 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 emhttp://groups.google.com/group/flexdev
>
> --
> 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
>



-- 
Clayton Marques Pereira

-- 
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