2009-12-04 6 views
0

Pour AS 3Comment obtenir le nom d'instance d'un MovieClip ou d'un nom créé dynamiquement?

J'ai une classe caisse un panneau avec bouton de fermeture. et je crée une instance de cette classe comme celui-ci

function _smallThumbClick(evt:MouseEvent):void { 
    var _popup:Popup=new Popup(square.width ,evt.currentTarget.y, evt.currentTarget); 
    addChild(_popup); 
    } 

et cet événement de la souris de la miniature (supposons), donc si je clique sur le pouce, il créerai pop-up. donc je veux fermer toutes les autres fenêtres pop ou précédemment ouvertes.

Comment u obtenir l'objet de classe popup à fermer d'une autre classe ..

ou est-il une autre méthode pour détecter instance du MovieClip ou classe ..

Répondre

2

Vous pouvez stocker une référence à la popup dans une variable publique et y accéder de l'extérieur.

public var popup:Popup; 
function _smallThumbClick(evt:MouseEvent):void 
{ 
    popup = new Popup(square.width ,evt.currentTarget.y, evt.currentTarget); 
    addChild(popup); 
} 

Maintenant, vous pouvez appeler this.removeChild(popup); de cette classe ou obj.removeChild(obj.popup); d'une autre classe.

Si vous êtes sur flexible, vous pouvez utiliser la classe PopUpManager.