Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > Flash/Flex > Flash
Flash Forum d'entraide sur la technologie Flash (Cours, FAQs, Sources)
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 01/11/2007, 16h18   #1
Membre habitué
 
Inscription : septembre 2006
Messages : 232
Détails du profil
Informations forums :
Inscription : septembre 2006
Messages : 232
Points : 126
Points : 126
Par défaut trouver tous les clips existant

hello les flasheurs...

j ai dans mon animation un fond (etc.) qui s ouvre au dessus de tout le reste deja present. Et j aimerais savoir comment il peut etre possible de rendre inactif tous les autres clips.
J imagine que c est possible via une boucle qui recupere tous les clips. Mais j connais pas la syntaxe et j ai pas trouvé d informations sur le net.


merci d'avance
éloi_75 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/11/2007, 16h32   #2
Membre actif
 
Inscription : septembre 2002
Messages : 165
Détails du profil
Informations forums :
Inscription : septembre 2002
Messages : 165
Points : 171
Points : 171
pas besoin de désactiver tes boutons, surtout s'ils sont nombreux.

va voir par là:

http://www.developpez.net/forums/sho...d.php?t=424479

bonne continuation
eddy verpoorter est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/11/2007, 15h13   #3
Membre habitué
 
Inscription : septembre 2006
Messages : 232
Détails du profil
Informations forums :
Inscription : septembre 2006
Messages : 232
Points : 126
Points : 126
je relance mon sujet, car en fait j aimerais vraiment savoir, s il existe un moyen de retrouver tous les clips present (ou tous les textes...)
éloi_75 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/11/2007, 20h00   #4
Membre actif
 
Inscription : septembre 2002
Messages : 165
Détails du profil
Informations forums :
Inscription : septembre 2002
Messages : 165
Points : 171
Points : 171
les retrouver je ne sais pas, mais les cataloguer, certainement....s'ils ont été créés en actionscript.

tu as fait une boucle pour les créer, il te suffit d'en faire une autre pour les effacer:
Code :
1
2
3
4
 
for (x==1, x<=6, i++){
removeMovieClip(_root["NomDuClip"+x]);
}
enfin si j'ai compris ce que tu cherches.....
eddy verpoorter est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/11/2007, 20h16   #5
Membre habitué
 
Inscription : septembre 2006
Messages : 232
Détails du profil
Informations forums :
Inscription : septembre 2006
Messages : 232
Points : 126
Points : 126
merci pour ta reponse, mais c est pas tout a fait ce que je voulaisz savoir...

je m explique un peu plus :
J aimerais recuperer/lister tous les clips present dans mon animations, sans pour autant connaitre a l avance le nom de ceux-ci, sinon cela serait bcp trop facile, eheh



Merci, j ai trouvé, c'était en fait tout simple.
Voici comment faire:
Code :
1
2
3
4
 
for (MovieClip in _root) {
   trace(MovieClip ); // la sortie affiche la liste de tous les clips présent
}
éloi_75 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/11/2007, 21h36   #6
Membre actif
 
Inscription : septembre 2002
Messages : 165
Détails du profil
Informations forums :
Inscription : septembre 2002
Messages : 165
Points : 171
Points : 171
j'avais.....et pour info (pour les lecteurs lol)
pour lister tous les objets ça donne:

Code :
1
2
3
4
 
for(obj in _root){
trace(obj);
}
eddy verpoorter est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/11/2007, 09h39   #7
Membre Expert
 
Avatar de dom_dev
 
Inscription : février 2006
Messages : 2 067
Détails du profil
Informations forums :
Inscription : février 2006
Messages : 2 067
Points : 2 114
Points : 2 114
bonjour,

à part que le résultat est pour le moins totalement fantaisiste !!

ça marche chez vous ce truc là??
__________________
Si la ou les réponses obtenues vous ont donné satisfaction n'oublier pas ->
Et ne rajoutez pas de nouvelles questions éternellement dans le même post surtout si vous en n'êtes pas l'auteur
MERCI
dom_dev est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/11/2007, 09h54   #8
Membre habitué
 
Inscription : septembre 2006
Messages : 232
Détails du profil
Informations forums :
Inscription : septembre 2006
Messages : 232
Points : 126
Points : 126
hello,

Non, j suis super deçu...
Comme tu dis le resultat est plutôt fantaisiste. Car chez moi, la liste qui en sort donne non seulement les clips mais aussi des variables...

J pense pourtant qu il doit y avoir un moyen de lister les clips (ou autre) en ayant un resultat "stricte"...
éloi_75 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/11/2007, 11h32   #9
Membre Expert
 
Avatar de dom_dev
 
Inscription : février 2006
Messages : 2 067
Détails du profil
Informations forums :
Inscription : février 2006
Messages : 2 067
Points : 2 114
Points : 2 114
Je ne sais pas s'il y a une "méthode de classe" qui permette cela, ça semble peu probable, par exemple en java ça n'existe pas, il faut passer par une "factory". Par exemple tu crées un tableau que tu appelles "registry" et tu écris une méthode qui gère l'enregistrement de toutes les instances de clip à leur création dynamique et tu n'oublies pas d'enregistrer également toutes les instances que tu crées à la main.
Je te concède que c'est plutôt lourd et c'est pour ça que je n'avais pas répondu à ta question initialement parce que je pensais que quelqu'un trouverai une solution plus "subtile"...
__________________
Si la ou les réponses obtenues vous ont donné satisfaction n'oublier pas ->
Et ne rajoutez pas de nouvelles questions éternellement dans le même post surtout si vous en n'êtes pas l'auteur
MERCI
dom_dev est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/11/2007, 12h49   #10
Membre habitué
 
Inscription : septembre 2006
Messages : 232
Détails du profil
Informations forums :
Inscription : septembre 2006
Messages : 232
Points : 126
Points : 126
Ok, effectivement ta méthode est logique, mais plutôt lourde.
C'est quand même bisarre, de ne pas pouvoir faire ça de facon simple.
Ca serait pourtant bien pratique...
éloi_75 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/11/2007, 19h19   #11
Membre actif
 
Inscription : septembre 2002
Messages : 165
Détails du profil
Informations forums :
Inscription : septembre 2002
Messages : 165
Points : 171
Points : 171
mmmmmm, en effet, pas très convainquant, j'ai testé ceci:

Code :
1
2
3
4
5
6
 
for (var name in _root) { 
 if (typeof (_root[name]) == "movieclip") { 
 trace("I have a movie clip child named "+name); 
 } 
}
mais il ne me fournit que les clips insérés de manière manuelle dans flash et non par actionscript....je continue à chercher
eddy verpoorter est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/11/2007, 12h17   #12
Membre habitué
 
Inscription : novembre 2004
Messages : 197
Détails du profil
Informations forums :
Inscription : novembre 2004
Messages : 197
Points : 120
Points : 120
Salut,
Pour ma part j'ai essayer ceci sous Flash8
Code :
1
2
3
4
5
6
 
for (i in scrollB) {
	    if (scrollB[i] instanceof MovieClip) {
    		trace(scrollB[i]._name);
		}
	}
avec scrollB un clip posé à la conception et sur lequel je fais des createEmptyMovieClip et attachMovie

En résultat j'ai bien tous mes clips !
ViveLesQuads est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/11/2007, 12h46   #13
Membre Expert
 
Avatar de Lorenzo77
 
Inscription : mai 2006
Messages : 1 294
Détails du profil
Informations personnelles :
Âge : 40
Localisation : France, Paris (Île de France)

Informations forums :
Inscription : mai 2006
Messages : 1 294
Points : 1 220
Points : 1 220
sauf que tu dois faire une fonction récursive pour lister les clips dans les clips !

j'en ai fait une en AS3 pour lister tous les composants posés sur la scene, ca te fera une base pour comprendre le fonctionnement, tu auras a rajouter une condition pour ne lister que les MovieClip.

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
 
		private function arborscence(source:*):String{
			var stTmp:String = '';
			var uiId:uint;
 
			// c'est un DisplayObject ... de quel type ?
			var stClassTmp:String = getQualifiedClassName(source);
 
			// Création du tableau de tous ces enfants (s'ils existent)
			var tbContenu:Array = new Array();
 
			for(uiId = 0; ;uiId++){
				try{
					var mxIdTmp:* = source.getChildAt(uiId);
				}catch(e:Error){
					break;
				}
				tbContenu.push(mxIdTmp);
			}
 
			// Essayer de recuperer l'ID / name
			var stId:String = '';
			var stNom:String = '';
			try{ stId = source.id;}catch(e:Error){}
			try{ stNom = source.name;}catch(e:Error){}			
 
			// Création arbo
			stTmp += "-- "+stClassTmp+" : (id:"+stId+"/name:"+stNom+") {"+uiId+"} --\n";
			for(uiId = 0; uiId < tbContenu.length; uiId++){
				stTmp += "["+uiId+"]"+" -> "+arborscence(tbContenu[uiId]);
			}
 
			return (stTmp);
		}
pour l'uitliser tu fais un : trace(arborscence(this));
Lorenzo77 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/11/2007, 13h36   #14
Membre habitué
 
Inscription : novembre 2004
Messages : 197
Détails du profil
Informations forums :
Inscription : novembre 2004
Messages : 197
Points : 120
Points : 120
Citation:
Envoyé par Lorenzo77 Voir le message
sauf que tu dois faire une fonction récursive pour lister les clips dans les clips !
Bien sûr que ça doit être récursif. Mais mon code posait juste la base en AS2 !
ViveLesQuads est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 04h32.


 
 
 
 
Partenaires

Hébergement Web