Flash制作講座フラッシュ制作講習

FLASH制作からActionScriptによるFlashコンテンツ制作のためのフラッシュ制作講座

AS3.0 ボタンの上のMC無効化

AS2.0でもあったのですが、ボタンオブジェクトとMCga
重なった場合のMOUSE_OVER制御です。


具体的な問題としては、ボタンオブジェクトにロールオーバー時に、上にMCを配置したときに下のボタンオブジェクトのロールオーバーを、上のMCが無効にしてしまい、正常に制御できませんでした。



回避方法としては、

mc名前.mouseEnabled = false;


だけです。




これでボタンオブジェクトしか反応しなくなります。


AS2.0では
on (rollOver) {
coverbtn.useHandCursor = false;
}


などで、MCの中にボタンオブジェクトを配置した場合の回避方法などがありました。


AS2.0とAS3.0の顕著な違いとして、ActionScirpt2.0ではこれらの制御がMC直接書き込みと、ルートもしくは外部記述で制御できたのに対して、ActionScript3.0ではMCやボタンオブジェクトに書き込みが直接できなくなっていることです。(現時点でMCに直接ASを書き込むやり方を知りません)



ちなみにAS3.0の場合はシンタックスチェックと実際のパブリッシュ時のコンパイルエラーを切りけできません。



文法的に正しくても、コンパイルが正常にできないと、パブリッシュしたときフラッシュが暴走します。