Erro ao acionar acao via script

PEssoal alguem pode me falar aonde esta dando erro nesse codigo por favor?

[code]<?xml version="1.0" encoding="utf-8"?>
<mx:VBox xmlns:mx=“http://www.adobe.com/2006/mxml” width=“66” height=“450” backgroundColor="#282828" verticalGap=“0”>
mx:Script
<![CDATA[
[Bindable]
private static var painelAumentar:String="";
[Bindable]
private static var painelDiminuir:String="{vbCesafis}";

		public function selecionarOpcao(evento:Event):void
		{
			painelAumentar=evento.target.id;
			movePaineis.play();
			painelDiminuir=evento.target.id;
		}
	]]>
</mx:Script>
<mx:Parallel id="movePaineis" targets="{[painelAumentar, painelDiminuir]}">
	<mx:Resize id="aumenta" heightFrom="50" heightTo="300" target="{painelAumentar}"/>
	<mx:Resize id="diminui" heightFrom="300" heightTo="50" target="{painelDiminuir}"/>
</mx:Parallel>
<mx:VBox width="100%" height="300" backgroundColor="#282828" borderStyle="solid" borderColor="#2B2A2A" borderThickness="2" horizontalAlign="center" id="vbCesafis" verticalGap="0"
		 click="selecionarOpcao(event)">
	<mx:Image source="imagens/1553_128x128.png"/>
	<mx:Image height="250" width="60" source="imagens/CesafisImage.png"/>
</mx:VBox>
<mx:VBox width="100%" height="50" backgroundColor="#282828" borderStyle="solid" borderColor="#2B2A2A" borderThickness="2" horizontalAlign="center" id="vbProfissional" verticalGap="0"
		 click="selecionarOpcao(event)">
	<mx:Image source="imagens/8435_128x128.png"/>
	<mx:Image height="250" width="60" source="imagens/ProfissionalImg.png"/>
</mx:VBox>
<mx:VBox width="100%" height="50" backgroundColor="#282828" borderStyle="solid" borderColor="#2B2A2A" borderThickness="2" horizontalAlign="center" id="vbExtras" verticalGap="0"
		 click="selecionarOpcao(event)">
	<mx:Image source="imagens/1553_128x128.png"/>
	<mx:Image height="250" width="60" source="imagens/ExtrasImagem.png"/>
</mx:VBox>
<mx:VBox width="100%" height="50" backgroundColor="#282828" borderStyle="solid" borderColor="#2B2A2A" borderThickness="2" horizontalAlign="center" id="vbAcompanhamento" verticalGap="0"
		 click="selecionarOpcao(event)">
	<mx:Image source="imagens/8435_128x128.png"/>
	<mx:Image width="60" height="250" source="imagens/AcompanhamentoImage.png"/>
</mx:VBox>

</mx:VBox>
[/code]

ele retorna o seguinte erro:

[quote]TypeError: Error #1006: value não é uma função.
at mx.effects::EffectInstance/play()[C:\autobuild\3.2.0\frameworks\projects\framework\src\mx\effects\EffectInstance.as:584]
at mx.effects.effectClasses::CompositeEffectInstance/play()[C:\autobuild\3.2.0\frameworks\projects\framework\src\mx\effects\effectClasses\CompositeEffectInstance.as:172]
at mx.effects.effectClasses::ParallelInstance/play()[C:\autobuild\3.2.0\frameworks\projects\framework\src\mx\effects\effectClasses\ParallelInstance.as:151]
at mx.effects::EffectInstance/startEffect()[C:\autobuild\3.2.0\frameworks\projects\framework\src\mx\effects\EffectInstance.as:569]
at mx.effects::Effect/play()[C:\autobuild\3.2.0\frameworks\projects\framework\src\mx\effects\Effect.as:930]
at br.com.cesafis.components::Menu/selecionarOpcao()[D:\Java\CursoFlex\projetos\CESAFIS\flex_src\br\com\cesafis\components\Menu.mxml:13]
at br.com.cesafis.components::Menu/__vbProfissional_click()[D:\Java\CursoFlex\projetos\CESAFIS\flex_src\br\com\cesafis\components\Menu.mxml:28][/quote]

Obrigado

Vamos la.

Existem uma série de erros em seu código:

  1. A propriedade target de qualquer efeito, ela deve ser preenchida com um Object, que por sua vez, deve ser um componente visual. Na sua atribuição, você está tentando associar uma String a esse valor.

  2. Suas variáveis são staticas sem nenhuma razão aparente. Isso faz elas consumirem memória em tempo desnecessário e ainda causar problemas caso essa tela seja instaciada em 2 lugares diferentes.

  3. Não é possível fazer bindable via actionScript. var painelDiminuir:String="{vbCesafis}"; não vai funcionar. Para usar o bindable via actionScript procure mais sobre BindUtils.

  4. Se você preenche o targets de um agregador de evento, como o Parallels e o Sequence, significa que todos os efeitos dentro deles serão aplicados para todos esses targets. No seu caso, você quer aplicar 1 efeito em 1 painel e outro efeito em outro painel. Logo, o targets do seu Parallel não esta correto. O item 1 se aplica a essa propriedade também.

  5. Além disso, você possui variáveis e bindables desnecessários para sua aplicação. Lembrando que o processo de bind é custoso e pode tornar sua aplicação lenta caso não seja usado de forma correta.

Pronto, agora vou para a solução:

  1. Simplesmente remova as variáveis painelAumentar e painelDiminuir da sua aplicação.
  2. Remova os targets do Parallel e o target do resize aumenta.
  3. No target do painel diminui, deixei o primeiro painel que é exibido na sua aplicação. (Ele é por padrão o primeiro painel a ser diminuído, certo?)
  4. Modifique sua função para o código abaixo.

aumenta.target = event.currentTarget;
movePaineis.play();

  1. No seu endEffect do Resize diminui, chame uma função que faça o seguinte.

diminui.target = aumenta.target;

Com isso, toda vez que terminar o efeito, o seu ultimo painel aberto estará no target do efeito diminui, e seu target de aumentar será trocado toda vez que clickarem no seu container.

Sugiro a você dar uma estudada melhor em flex. Ler alguns livros mais básicos para tirar melhor proveito da linguagem.