0

mx:Imageコンポーネントには、creationCompleteEffect="glowIn"があります。

  <mx:Glow id="glowIn" duration="700"
 alphaFrom="0" alphaTo="1"
 blurXFrom="0.0" blurXTo="30.0" 
 blurYFrom="0.0" blurYTo="30.0"  strength="2"
 color="0xCCFFCC" effectEnd="glowOut"/>

 <mx:Glow id="glowOut" duration="800"
 alphaFrom="1" alphaTo="0"
 blurXFrom="30.0" blurXTo="0.0"
 blurYFrom="30.0" blurYTo="0.0"  strength="2"
 color="0xCCFFCC" effectEnd="glowIn"/>

問題は、エフェクトがonCompleteイベントで正確になるが、セルフエフェクトの「effectEnd」が発生しないことです。したがって、glowEffectsを循環する代わりに、最初の1つ(glowIn)に留まります。解決策はありますか?

ありがとう、ヤン

4

1 に答える 1

0

effectEnd で何をしようとしていますか? 通常、メソッドを呼び出そうとしますが、文字列値を指定しているように見えます。次のようなことを試してください:

  <mx:Glow id="glowIn" duration="700"
 alphaFrom="0" alphaTo="1"
 blurXFrom="0.0" blurXTo="30.0" 
 blurYFrom="0.0" blurYTo="30.0"  strength="2"
 color="0xCCFFCC" effectEnd="{glowIn(event)}"/>

 <mx:Glow id="glowOut" duration="800"
 alphaFrom="1" alphaTo="0"
 blurXFrom="30.0" blurXTo="0.0"
 blurYFrom="30.0" blurYTo="0.0"  strength="2"
 color="0xCCFFCC" effectEnd="{glowOut(event)}"/>

イベント ハンドラは次のようになります。

public function glowIn(e:Event):void{
 // do stuff
}
public function glowOut(e:Event):void{
 // do stuff
}

これは問題にはなりませんが、実際のエフェクトで effectEnd イベントをリッスンしている人を見たことがありません。通常、UIComponent でリッスンします。Sok、他のすべてが失敗した場合は、ハンドラー関数を実際の UIComponent に移動します。

于 2010-08-29T11:30:46.803 に答える