Depois de um dia inteiro procurando uma solução. catando em vários foruns,
listas e etc.
NOSSO GRANDE amigo José Carlos Silveira Fiel <[email protected]> deu a luz e
o filho nasceu hehehe .
Nada de coisa mirabolante bastou eu colocar um metodo de
selecionarComboCidade(codEstado) no método Result .
Funcionou tanto selecionando pelo dataGrid como no momento do cadastro onde
todos os campos estão nulos.
Só que agora fica a questão, porque o FLEX não consegue redirecionar uma
sequência em um determinado método, quando esse redirecionamento é para
fazer uma select ou update ou insert num DAO.? Só entra no DAO depois que o
método/function é finalizado.!!!!
exemplo:
functtion capturarLinha(linha:int):void {
campo1.text=listadeRegistro[linha].campo1
campo2.text=listadeRegistro[linha].campo2
codPai=campo2.text;
classeFilhoDAO.BuscarFilhosDoPai(codPai); //pelo Debug o cursor entra
no método mas não no DAO.
campo3.text=listadeRegistro[linha].campo3
codFilho=campo3.text;
selecionarComboFilho(codFilho); //aqui da erro pois a listaDeFilhos
é nula
}
só no final é que ele entra no DAO e preenche a listaDeFilhos.
Para os mais experientes , poderíamos criar até um novo tópico.
abraço a todos e boa noite.
obrigado José
2009/4/18 bruno bg <[email protected]>
> sim eu uso o "change" no comboBoxEstado e nele resgato as cidade do DAO
> passando para um arraycollection usando um <mx:RemoteObject>. No momento do
> cadastramento funciona perfeitamente. Só traz as cidades daquele estado.
>
> no dataGrid eu uso o evento "click" onde capturo a linha clicada e resgato
> todos os campos daquele registro.
> eu tentei fazer isso de filtrar as cidades passando o estado como parametro
> da mesma maneira que o "change" do
> comboboxEstado.
>
> Só que o flex só executa esse filtro depois que o metodo capturaLinha do
> "click" do dataGrid é finalizado.
>
> será que não existe como chamar um método/function antes do "click" do
> dataGrid.
>
> Já fiz um comboEstado.addEventListener("buscarCidades",buscandoCidades);
> e fazendo um comboEstado.dispatchEvent(new Event("buscarCidades")) no meio
> do capturaLinha
> mas só é executado depois que finaliza o capturaLinha.
>
> eu estou usando Cidades e Estados para simplificar o exemplo e meu
> problema.
>
> está em anexo o que realmente uso.
> Cliente, Empresa e PlanosDaEmpresa. e os combos são comboEmpresa e
> comboPlano.
>
> abraço e obrigado.
>
>
>
> 2009/4/18 José Carlos Silveira Fiel <[email protected]>
>
> Bruno, pelo visto é a mesma questão do outro post que acabei de responder.
>> Seguinte, você já consegue selecionar o comboEstado e populando o
>> comboCidade trazendo todas as cidades do estado selecionado, certo?
>> Bom você está usando o evento "change" pelo visto, então ao selecionar no
>> DataGrid é a mesma coisa que a função do seu "change" faz. O evento
>> itemClick do DataGrid deve executar a mesma função que o seu "change" do
>> comboEstado faz, sendo que antes você vai ter que selecionar seu estado
>> vindo do DataGrid em seu comboEstado e assim, você pega o
>> comboEstado.selectedItem para fazer esta ação de filtrar as cidades pelo
>> estado.
>>
>> Não sei se compreendeu, qualquer dúvida, retorna.
>>
>> --
>> Att.,
>> José Carlos Silveira Fiel
>> Programador Adobe Flex e PHP
>> http://blog.fielweb.com.br/
>>
>>
>> 2009/4/17 bruno bg <[email protected]>
>>
>>> o amigão , obrigado por responder..
>>> isso eu já faço e está funcionando legal.
>>> Tipo tenho um comboEstado e outro comboCidade, quando eu escolho um
>>> Estado , automaticamente o dataprovider da cidade é atualizado e preenche o
>>> conteúdo do comboCidade.
>>>
>>> o problema que eu preciso a partir de um dataGrid, quando clicado é
>>> preencher o comboEstado e o comboCidade, sendo que o comboCidade só aparecer
>>> as cidades do estado selecionado.
>>>
>>>
>>>
>>>
>>> 2009/4/17 Rodrigo Pandini <[email protected]>
>>>
>>> Não entendi muito bem não sua dúvida, mas tenta algo como tá abaixo.
>>>> O comboBox tem o "change", que é usado quando for selecionado uma de
>>>> suas opções.
>>>>
>>>> <?xml version="1.0" encoding="utf-8"?>
>>>> <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
>>>> layout="absolute">
>>>>
>>>> <mx:Script>
>>>> <![CDATA[
>>>> import mx.events.ListEvent;
>>>> import mx.controls.Alert;
>>>>
>>>> private var dp:Array = ["item 1","item 2","item 3","item
>>>> 4"];
>>>> private function func(e:ListEvent):void
>>>> {
>>>> Alert.show(cb.selectedItem.toString());
>>>> }
>>>>
>>>> ]]>
>>>> </mx:Script>
>>>> <mx:ComboBox id="cb" dataProvider="{dp}" change="func(event)" />
>>>>
>>>> </mx:Application>
>>>>
>>>> Abraço
>>>>
>>>> 2009/4/17 bruno bg <[email protected]>
>>>>
>>>> como eu poderia implementar uma "escuta" para um comboBox.
>>>>> Quando ele é preenchido
>>>>> e
>>>>> PRINCIPALMENTE Quando ele é selecionado . exemplo:
>>>>> comboQualquer.selecteditem = objeto ele executar a "escuta";
>>>>>
>>>>>
>>>>>
>>>>
>>>>
>>>>
>>>
>>>
>>> -
>>>
>>>
>>>
>>
>> >>
>>
>
--~--~---------~--~----~------------~-------~--~----~
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
-~----------~----~----~----~------~----~------~--~---