Por coincidência ou não, estou respondendo o 3 post seu sobre combos e
datagrid hehe, mas vamos lá

O problema de popular o "combo Dependente" somente depois que finaliza a
função CapturaLinha é que você quer selecionar algum item deste "combo
Dependente" isso?
Se for isso, você deve somente selecionar este item depois de populado
obviamente, ou seja, na sua função de Result, que acaba de popular, aí se
populou, seleciona, senão faz nada (um pequeno tratamento hehe).
Senão for isso, posta aí! ;-)

Abraços,
-- 
Att.,
José Carlos Silveira Fiel
Programador Adobe Flex e PHP
http://blog.fielweb.com.br/

2009/4/17 bruno bg <[email protected]>

> Eu tenho dois ComboBox que são por exemplo  Titular e o outro Dependentes
> desse titular.
> O primeiro eu já preencho no init().
> E o outro combobox "dependente" preencho de acordo com a escolha do
> "titular".
> No momento da cadastrar está tudo funcionando perfeitamente.
>
> QUANDO EU FAÇO A PESQUISA PELO DATAGRID (PROBLEMAS !!!)
> Eu tenho um DataGrid, onde faço a pesquisa do titular, quando eu clico cai
> na function "CapturaLinha" onde eu preencho os campos para
> uma visualização do usuário onde ele pode alterar ou excluir o registro.
>
> Como eu preencho o combobox "dependente" de acordo com o "titular"
> escolhido, na function "capturaLinha(int(dtgrdCliente.selectedIndex))"
> coloquei uma chamada para outra function "PreencheComboDependente" passando
> como parametro o id_do_titular que capturo do DataGrid.
> Aê que fica o problema,
> essa function "PreencheComboDependente" só é excutada depois da function
> "capturaLinha" é finalizada.
> Debugando eu vi que some os aributos e parametros.
>
> eu uso a estrutura:
>     <mx:RemoteObject id="dependenteDAO" destination="DependenteDAO">
>         <mx:method name="BuscarDoTitular" result="onResultList(event)"
> fault="onFaultGetList(event)"/>
>     </mx:RemoteObject>
>
> E no ActionScript está assim:
>
>         [Bindable]
>         private var listaDeTitulares:ArrayCollection;
>         [Bindable]
>         private var listaDeDependentes:ArrayCollection;
>
>        private function capturaLinha(linha:int):void {
>           if (dtgrdCliente.selectedIndex == -1)
>               Alert.show("Selecione um Registro!");
>           else{
>             inputId_cliente.text=listaDeTitulares[linha].id_cliente;
>
>             //Buscando os dependentes
>             buscandoDependentes(listaDeTitulares[linha].id_empresa);
> // aqui vai no DAO criar o Array e depois automaticamente vai para
> onResultList
>             selecionarDependente(listaDeTitulares[linha].id_dependente);
> // aqui faz um for no Array listaDeDependentes  para fazer um selectedItem
> no combobox
>             inputNome.text=listaDeTitulares[linha].nome;
>             }
>         }
>
>         private function buscandoDependentes(codTitular:int):void{
>             dependenteDAO.BuscarDoTitular(codTitular);
>         }
>
>         private function onResultList(event:ResultEvent):void {
>             if (event.result.length != 0)
>                 listaDeDependentes = event.result as ArrayCollection;
>             else {
>                 Alert.show("Não encontrado");
>                 listaDeDependentes = new ArrayCollection();
>             }
>         }
>
>
> Será que estou errando na estrutura ?
> Ou será na lógica ?
>
>
> >
>

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