Я новичок во Flex, и мне тяжело работать с эффектами.
Сейчас я имею дело с проблемами, с которыми сталкиваются при конкурирующих эффектах.
Пожалуйста, посмотрите на следующий код. Я в основном создал короткий воспроизводимый тестовый образец, который показывает проблему, с которой я сталкиваюсь:
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" width="400" height="400">
<mx:Script>
<![CDATA[
private function showmenu():void
{Menu.visible= true;
}
private function hidemenu():void
{Menu.visible= false;
}
]]>
</mx:Script>
<mx:WipeDown id="wipedown" duration="900"/>
<mx:WipeUp id="wipeUp" duration="900" />
<mx:Canvas id="main" width="400" height="400"
rollOver="showmenu();" rollOut="hidemenu();">
<mx:Button label="Show Menu"
x="100" y="20">
</mx:Button>
<mx:Canvas id="Menu" visible="false"
width="100" height="200"
backgroundColor="#B8B8B8" x="96" y="35"
showEffect="{wipedown}" hideEffect="{wipeUp}">
</mx:Canvas>
</mx:Canvas>
</mx:Application>
Это в основном показывает кнопку, и при наведении на кнопку, другой холст, который будет своего рода меню, будет отображаться. При развертывании меню исчезает.
В меню также есть некоторые эффекты, и если вы попытаетесь запустить один эффект до того, как другой закончится, он попадет в бесконечный цикл.
Чтобы воспроизвести то, о чем я говорю, ролловер кнопку, затем свиток и затем снова быстрый ролловер . Вы увидите, что эффекты меню зациклены.
Как мне обойти это?