実際には表示されないことを除いて、明らかvisible = false;
に子の表示プロパティには影響しません。親スプライトとその子、およびその子の子などを無効にするには、どのような手法を使用できますか?
- すべての子を持つスプライトを無効にする
- すべての子でスプライトを有効にする
- ステージから削除しないでください
- 親と子が無効になっている間、イベントをブロックします
Ps: この機能は ActionScript 3 にはないようです。
実際には表示されないことを除いて、明らかvisible = false;
に子の表示プロパティには影響しません。親スプライトとその子、およびその子の子などを無効にするには、どのような手法を使用できますか?
Ps: この機能は ActionScript 3 にはないようです。
可視プロパティの目的を誤解していると思います。
Adobe によると、Visible は次のことを決定します。
表示オブジェクトが表示されるかどうか。表示されていない表示オブジェクトは無効になります。たとえば、InteractiveObject インスタンスの visible=false の場合、クリックできません。
これは、起動などの他のイベント ハンドラーを防止するという意味ではありませんEvent.ENTER_FRAME
。要素を無効にするために依存している場合は、その表示オブジェクトからイベントを発生させる前にvisible
、この値が実際にあることも確認する必要があります。true
親スプライトが表示されず、子が描画されないにもかかわらず、これは機能しません。このプロパティの値は true のままです。
...
子供が障害者かどうか簡単に確認できない: if (visible)
親の DisplayObject の可視性を false に設定し、それがすべての子に伝播することを期待している場合は、間違っています。親の表示フラグのみが false のままになります。代わりに、次のように親をチェックして、子の可視性を確認する必要があります。
if(parent.visible) {
//perform logic here...
}