begin process at 2012 05 27 16:34:59
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Flash / Flash MX

 > 

Scripts

 > 

ActionScript

 > 

Remplacer un movie clip (child) par un autre en as3


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Remplacer un movie clip (child) par un autre en as3

mardi 15 septembre 2009 à 11:55:31 | Remplacer un movie clip (child) par un autre en as3

mariemachin


Salut la compagnie,
Je suis novice en action script 3
Je souhaiterais faire un truc à priori tout simple, à savoir remplacer un movie clip (movieclip1) par un autre (movieclip2) et par cette action décharger le premier movie clip (movieclip1).
Voila le code que j'ai mis sur la derniere image de mon movieclip1 :

import flash.display.MovieClip;

var chargeClip2:MovieClip = new movieclip2();
addChild(chargeClip2);

Pas de souci pour visualiser le movieclip2 sauf que le movieclip1 est toujours visible et donc chargé, (normal puisqu'on est dedans).

Je pense qu'il faut que j'appelle le movieclip1 en code depuis la sequence 1 (car la du coup movieclip2 est un enfant de movieclip1, n'est-ce pas?) et que par la même occasion je lui dise qu'une fois que movieclip1 a joué il lance movieclip2 et le décharge, mais c'est ce code la que je ne connais pas... Soyez sympa les copains, ce n'est pas une colle que je vous pose mais le béaba de l'as3, j'attends avec impatience votre petit coup de pouce. Si je peux vous aider sur d'autres trucs, ce sera avec plaisir évidemment.

Merci d'avance.


À force de transformer des bidules en trucs, j'obtiens des machins...

mercredi 16 septembre 2009 à 10:18:41 | Re : Remplacer un movie clip (child) par un autre en as3

dj_ouf

Hello

La principe pour remplacer facilement un objet graphique est le suivant :

conteneur.addChildAt( mc, index);

Tout simplement.. Le fait de spécifier un index est ce qui fait tout. Comme il doit afficher le movieclip à la même profondeur, il va remplacer l'ancien.
Ça implique bien sûr que mc1 a été affiché à cette même profondeur, et depuis le même conteneur.

Ah oui, tu devrais extraire le code contenu dans la derniere image de ton movieclip1, pour le mettre sur le scénario, c'est + propre et moins contraignant.

En espérant t'avoir un peu dépanné.

mercredi 16 septembre 2009 à 10:23:17 | Re : Remplacer un movie clip (child) par un autre en as3

dj_ouf

ps: si tu demandes comment savoir que mc1 a fini d'être joué si tu ne mets plus de code à l'intérieur, et donc depuis le scénario, tu peux faire une boucle enterframe et tester si mc.currentframe == mc.lastFrame

(bon y'a mieux en dispatchant un événement depuis la dernière frame, mais c'est une solution).

mercredi 16 septembre 2009 à 11:57:46 | Re : Remplacer un movie clip (child) par un autre en as3

mariemachin

Merci pour tes conseils, je vais me pencher sur cette histoire d'index et de profondeur que je ne maitrise pas encore, j'ai compris le principe mais jamais mis en application.
Petite question pour être sûre,
Avec la méthode que tu m'as indiqué mon mc sera remplacé mais est-ce que le précédent sera toujours chargé en mémoire??? Mon souci est surtout là, faut que j'optimise à bloc tout mon mon projet car j'ai beaucoup d'élèment à intégrer.
Encore merci.


À force de transformer des bidules en trucs, j'obtiens des machins...

mercredi 16 septembre 2009 à 14:24:52 | Re : Remplacer un movie clip (child) par un autre en as3

dj_ouf

Bon alors en fait j'ai dis une bétise! Le clip ne sera pas remplacé sur sa profondeur mais seulement décalé! En fait il faut effacer l'ancien mc pour ajouter le nouveau à sa place. Mais le principe des profondeurs est toujours valable.

Si tu veux voir un peu la théorie dessus, qui est très importante si tu veux bien gérer ton appli, c'est "la gestion de la display list", autrement dit de la liste d'affichage (comment flash player gère tous les objets graphiques à l'écran en gros).
Y'a le tuto de Thibault Imbert qui est très bien pour ça :
http://www.flashxpress.net/wp-content/livreThibault/Chapitres/Ch04%20-%20Liste%20d%27affichage.pdf (page 8 pour ton cas)

Par contre, lorsque tu utilises removeChild(mc) pour le virer de l'écran , l'objet subsiste toujours en mémoire. Il faut l'attribuer à null pour libérer les ressources (mc = null;) (et aussi penser à virer les écouteurs si tu as ajouté).

mercredi 16 septembre 2009 à 15:33:48 | Re : Remplacer un movie clip (child) par un autre en as3

mariemachin


OK je te remercie de la précision.
Je connais cet ouvrage, c'est une vraie bible (bien que pas toujours évident à déchiffrer pour un novice) mais quand j'ai en plus des explications plus concrètes comme tu m'as donné ça devient tout de suite plus accessible.


À force de transformer des bidules en trucs, j'obtiens des machins...



Cette discussion est classée dans : clip, remplacer, movie, movieclip1, movieclip2


Répondre à ce message

Sujets en rapport avec ce message

Appel de var d'un txt dasn un movie clip [ par Burnside ] Je n'arrrive pas a faire apparaître une variable qui se trouve dans un txt dans un movie clip.Merci,Burnside Movie clip invisible [ par spider987 ] Voila je suis debutant en flash.Je vous explique ce que je souhaite realiser en deux mot :Bon je réalise un petit site en flashil y a un movie clip po comment remplacer un movie clip par un autre avec un bouton [ par seed ] salut je voudrais reussi a changer un movie clip par un autre en utilisant un bouton j ai essayer un truc du genre on (release){_root.mon_clip=_root. Remplacer un movie flash par une image [ par riccox44 ] Comment puis-je faire pour remplacer dans une page html un movie Flash par une image si le surfeur n'a pas de player flash.merci de me doner un coup d Gestion de plus de 1000 Movie Clip [ par ace5150 ] SalutJ'ai reçus comme projet la gestion de salle de spectacles avec réservation on-line de ticket. Jusque là pas de problème, lors de mes premier test Grille aléatoire sur movie clip [ par Burnside ] Bonjour,Je desirerai savoir comment l'on peut créer une grille vituelle dans un movie clip.Explication:J'ai un fichier Index.swf, qui load des autres apparition, disparition de movie clip [ par Raizen ] bonjour...Voila, j'ai un problème.... je souhaiterai controler l'apparition et la disparition de movies clip depuis des boutons (un par movies clip). un movieclip qui controle la scene principale... [ par phiphou ] Bonjour tout le monde...Voici mon pb :J'ai une scene principale, avec des boutons de navigation, et différents labels vers lesquels les boutons renvoi Supprimer un movie clip [ par Stan62970 ] Salut a tsje ve supprimer un movie clip insséré depui la librairievoila ya pa grand chose a rajouter !merci d'avance(je c pa si c ds le bon theme ms c deplacement movie clip [ par Stan62970 ] Salut !chui en galére !je ve deplcé un movie clip par code !il fodré que je recrée l'evenment onClipEvent(EnterFrame)mais dans un layer (en gros)j'esp


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,279 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales