2009-09-22 9 views
1

J'ai un MovieClip qui décharge deux autres MovieClips quand il est cliqué. Ce bit fonctionne très bien, mais il devrait également se retirer après cela, ce qui ne fonctionne pas particulièrement. Voici mon code, quelqu'un peut-il s'il vous plaît me dire ce que je fais mal:Flash + AS2 = Décharger un MovieClip lui-même quand il est cliqué

close_button.onRelease = function() { 
background.unloadMovie(); 
loading.unloadMovie(); 
this.unloadMovie(); 
} 

Cordialement et TIA

// modifier

Voici le code que je crée les MovieClips:

// load background, movieclip container (loading) and close button 
var background:MovieClip = _root.attachMovie("mc_back","loading_background", 100000); 
var loading:MovieClip = _root.createEmptyMovieClip("loading",_root.getNextHighestDepth()); 
var close_button:MovieClip = _root.attachMovie("close_button","close_button",_root.getNextHighestDepth()); 

J'ai essayé:

this._parent.close_button.unloadMovie(); // it removed the whole _root movieclip, as _root is the parent

et

_parent.close_button.unloadMovie(); // did just nothing

deux ont échoué.

Répondre

0

Dans le gestionnaire d'événements, 'this' se réfère à close_button, pas au film principal. Tout ce que vous avez à faire est de déclarer une variable égale à this en dehors du gestionnaire onRelease du bouton de fermeture, ou essayez this.parent.unloadMovie() (en supposant que le parent du bouton de fermeture est le film que vous essayez de supprimer).

+0

Merci, j'ai essayé, mais cela n'a pas fonctionné, à la place, il a tout déchargé dans le swf, ce qui était à prévoir. Informations supplémentaires dans le message. –

0

Essayez

close_button.onRelease = function() { 
    background.unloadMovie(); 
    loading.unloadMovie(); 

    this.removeMovieClip(); // This 'removes' the movie clip 
          // which is the closest to 'unload' 

} 
+0

Merci, j'ai essayé, mais ça n'a pas marché. Informations supplémentaires dans la question. –

+0

Donc, vous voulez dire que vous voulez décharger le bouton? Le bouton ne peut pas être déchargé mais simplement caché. Je mets à jour la réponse –

1

un MovieClip ne peut pas décharger son auto, car il ne peut pas lire un code qui ne sont pas là pour ne décharge pas en premier lieu.