IGOR:
minha LIST é normal sem itemRenderer.
eu clicando no meu LIST quando tem várias opções me retorna corretamente a
posição do ítem no LIST com a propriedade RowIndex.
FABIO
tentei "setar" essa propriedade do meu LIST mas não existe. Somente existe
no retorno do EventList.
eu faço meu dispatch assim , como tinha colocado no post inicial :
//para quando a lista só contém um ítem
if (listaDeModulos.length==1){
ListModulos.selectedIndex=0;
ListModulos.dispatchEvent(new ListEvent(ListEvent.ITEM_CLICK));
PopUpManager.removePopUp(this);
}
//quando a Lista tem mais de um ítem , deixo a cargo do usuário escolher os
ítens disponíveis.
Pelo link
http://livedocs.adobe.com/flex/3/langref/mx/events/ListEvent.html#rowIndex .
entendi que ROWINDEX é o um índice com base zero (ou seja começa do zero) da
linha que contém o item renderer (assim separado tem sentido de item
redirecionado) em que ocorreu o evento, ou para eventos de edição, o índice
do item no dataProvider que está sendo editado.
Bom , me parece que o rowIndex reflete o correto, somente quando o usuário
clica com o mouse em cima de um ítem.
Quando eu "forço" o dispatch tenho que pegar do selectedIndex.
Acredito que o correto seria eu capturar com target.selectedIndex !
brunobg
Em 12 de maio de 2010 15:46, Igor Costa <[email protected]> escreveu:
> Bruno
>
> A propriedade rowIndex mostra apenas o primeiro item da lista, e não o item
> selecionado. Principalmente quando você está usando itemrender em sua
> lista/datagrid.
>
> A solução para ele retornar zero seria você extender o List para pegar o
> getItemIndex e associar ao rowIndex.
>
>
> []'s
> ----------------------------
> Igor Costa
> www.igorcosta.com
> www.igorcosta.org
>
>
> 2010/5/11 bruno bg <[email protected]>
>
>> criei um addEventListener(ListEvent.ITEM_CLICK, funcao); de um Componente
>> List "qualquer"
>>
>> sendo que a condição é se o array for Maior que ZERO vai aparecer uma
>> LISTA de opções para ser escolhida e vai disparar o evento ITEM_CLICK do
>> mouse. BLZ FUNCIONA.
>>
>> agora se tiver somente um item no array, forcei o dispatchEvent : BLZ
>> FUNCIONA
>> if (listaDeModulos.length==1){
>> ListModulos.selectedIndex=0;
>> ListModulos.dispatchEvent(new ListEvent(ListEvent.ITEM_CLICK));
>> PopUpManager.removePopUp(this);
>> }
>> para essa condição na minha function "funcao" a que recebe o "disparo" ,
>> eu leio o ROWINDEX que correponde ao item clicado pelo mouse.
>> Como não teve a ação do mouse, pois forcei o dispatchEvent. quando leio o
>> ROWINDEX ele me retorna -1 . E não 0 (zero) que seria o primeiro e único
>> ítem existente.
>> vi que o target.selectedIndex está igual a 0 (zero).
>> mas o retorno ROWINDEX é igual a -1.
>>
>> o que posso fazer para o ROWINDEX me retornar 0 (zero) IGUAL ao
>> selectedIndex ?
>>
>> abraço
>> brunobg
>>
>> --
>> 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
>>
>
> --
> 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
>
--
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