Estranho...
1) Qual a versão da framework do Flex que você está usando? Testei aqui
usando 3.2.0 e não tive nenhum problema...
2) Tente colocar em um callLater, algo assim:
private function desabilita () :void
{
callLater(callLater_desabilita);
};
private function callLater_desabilita () :void
{
txtAtvEleitoral[2].enabled=false;
};
--
Gustavo Y. Kawamoto
2009/12/22 Collin Peterson Mendes Chaves <[email protected]>
> esse erro é como se o objeto textinput não existisse, porém o evento
> repeatEnd só é disparado depois da execução do repeat, pelo menos foi o que
> entendi.
>
>
> 2009/12/22 Collin Peterson Mendes Chaves <[email protected]>
>
>>
>> o erro que aparece:
>>
>> TypeError: Error #1009: Não é possível acessar uma propriedade ou um
>> método de uma referência de objeto nula.
>> at componentes::InfanciaJuventude/desabilitaAtividade()[C:\Documents and
>> Settings\collin\My Documents\Flex Builder
>> 3\proRelatorioCorregedoria\src\componentes\InfanciaJuventude.mxml:283]
>> at componentes::InfanciaJuventude/__lstAtvAIJuv_repeatEnd()[C:\Documents
>> and Settings\collin\My Documents\Flex Builder
>> 3\proRelatorioCorregedoria\src\componentes\InfanciaJuventude.mxml:362]
>> at flash.events::EventDispatcher/dispatchEventFunction()
>> at flash.events::EventDispatcher/dispatchEvent()
>> at
>> mx.core::UIComponent/dispatchEvent()[E:\dev\3.0.x\frameworks\projects\framework\src\mx\core\UIComponent.as:9051]
>> at
>> mx.core::Repeater/createComponentsFromDescriptors()[E:\dev\3.0.x\frameworks\projects\framework\src\mx\core\Repeater.as:804]
>> at
>> mx.core::Repeater/initializeRepeater()[E:\dev\3.0.x\frameworks\projects\framework\src\mx\core\Repeater.as:529]
>> at
>> mx.core::Container/createComponentFromDescriptor()[E:\dev\3.0.x\frameworks\projects\framework\src\mx\core\Container.as:3667]
>> at
>> mx.core::Container/createComponentsFromDescriptors()[E:\dev\3.0.x\frameworks\projects\framework\src\mx\core\Container.as:3485]
>> at
>> mx.core::Container/createChildren()[E:\dev\3.0.x\frameworks\projects\framework\src\
>> 2009/12/22 Collin Peterson Mendes Chaves <[email protected]>
>>
>> colocar um dos textinputs com o estado de desabilitado, entende? os
>>> textinputs que são criados dentro do repeat não são transformados em arrays?
>>> é isso que estou tentando fazer.
>>> (para samuel) daqui a pouco posto o erro ok?
>>>
>>> obrigado
>>> 2009/12/22 Rafael <[email protected]>
>>>
>>> isto provavelmente esta errado
>>>> txtAtvEleitoral[2].enabled='false';
>>>>
>>>> o que tu desejas fazer?
>>>>
>>>>
>>>>
>>>> 2009/12/22 samuelfac <[email protected]>
>>>>
>>>> Olá. Podes copiar o erro aqui para analizar?
>>>>>
>>>>> Obrigado
>>>>>
>>>>> On 22 dez, 15:51, Collin Peterson Mendes Chaves
>>>>> <[email protected]> wrote:
>>>>> > amigos, estou tentando atribuir enabled dinamicamente a um elemento
>>>>> > textinput do código a seguir:
>>>>> >
>>>>> > <mx:Repeater id="lstAtvEleitoral"
>>>>> dataProvider="{arAtividadesEleitoral}"
>>>>> > repeatEnd="desativa()">
>>>>> > <mx:HBox width="100%" height="32"><mx:Canvas width="100%"
>>>>> id="canvas"
>>>>> > height="29"
>>>>> >
>>>>> backgroundColor="{Number(lstAtvEleitoral.currentItem.corFundo)}"><mx:Label
>>>>> > text="{lstAtvEleitoral.currentItem.nome}" y="5" color="#000000" />
>>>>> > <mx:TextInput id="txtAtvEleitoral" width="38" color="#000000"
>>>>> x="519"
>>>>> > y="4" restrict="0-9"/></mx:Canvas></mx:HBox>
>>>>> > </mx:Repeater>
>>>>> >
>>>>> > a função desativa é:
>>>>> >
>>>>> > public function desativa():void{
>>>>> > txtAtvEleitoral[2].enabled='false';
>>>>> >
>>>>> > }
>>>>> >
>>>>> > só que apresenta erro de referência nula.
>>>>> >
>>>>> > alguém sabe como resolver?
>>>>>
>>>>> --
>>>>> 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
>
--
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