christ_l
Messages postés6Date d'inscriptionvendredi 26 décembre 2003StatutMembreDernière intervention 9 août 2011
-
14 avril 2008 à 02:05
dj_ouf
Messages postés221Date d'inscriptionvendredi 15 avril 2005StatutMembreDernière intervention 6 septembre 2011
-
15 avril 2008 à 09:51
Bonjour,
désolée car je suis super débutante.
Je sais que c'est un problème de cible car lorsque je sort le bouton du clip B le lien fonctionne. j'explique :
Je vais essayer d'être claire :
dans mon animation principal J'ai
placé un bouton (A) : on (release) {gotoAndStop(10);ani.removeMovieClip();}
-> clip 1 (soucy_mc) (sur frame10)
dans clip 1 (soucy_mc) : j'ai un clip 2 (soucy_menu) dans lequel se trouve le bouton (B) : on (release) {
attachMovie("animation", "ani", 1);
ani._x = 230;
ani._y = 210;
ani.couleur = "atl237_soucygalerie4";}
le bouton B appel le clip 3 (animation) qui pointe vers un .swf externe voici le code du clip 3 (animation) : stop();
var myMCL = new MovieClipLoader();
myMCL.loadClip(couleur + ".swf",this);
(remarque : le clip 3 n'est placé sur aucune frame, et existe ds la bibliothèque
remarque : j'ai une succession de clip car les menu sont animés)
Donc le problème est que lorsque mon btn B est sur un calque de l'anim principal il ouvre bien le .swf via le clip 3 (animation)et dès que je mets ce btn B dans le clip 2 il ne fonctionne plus et j'ai ce message d'erreur : Error opening URL "file:///F|/SITE%20ATL237/Site%5FAtelier237%2Bgalerie/undefined.swf"
J'espère que c'est assez compréhensible.
en espérant avoir une solution, merci d'avance.
Christelle.
dj_ouf
Messages postés221Date d'inscriptionvendredi 15 avril 2005StatutMembreDernière intervention 6 septembre 2011 14 avril 2008 à 18:22
Salut!
Je ne suis pas sûr d'avoir très bien saisi ton problème mais je vais tenter de t'aider..
Visiblement, grâce au message d'erreur que tu as donnée, le soucis proviendrait simplement de la variable "couleur".
Et à mon humble avis, c'est un problème de domaine. C'est à dire qu'une fois ton bouton B dans le clip 2, il ne connait tout simplement plus la variable "couleur" (car tu l'as nommé en propriété d'animation)
2 solutions :
- méthode hardcore : tu nomme ta variable "couleur" en variable globale, et donc accessible à partir de n'importe où ( _global.couleur = "..."; )
- ou encore : tu déclares ta variable dans le même domaine que ton bouton (en occurence, sur le même calque.)
christ_l
Messages postés6Date d'inscriptionvendredi 26 décembre 2003StatutMembreDernière intervention 9 août 2011 14 avril 2008 à 20:03
Salut,
Super ça fonctionne !!! enfin presque...
J'ai bien mis le code _global.couleur = "..."; sur le calque du clip contenant le bouton (qui appel le clip qui pointe vers le swf).
Mais le .swf s'affiche en x/y = 0 ; alors que sur le clip (qui appel le swf) il y a bien ceci :
ani._x = 230;
ani._y = 210;
apparemment il n'en tient compte :( ; j'ai essayer de déclarer une autre variable pr le positionnement mais ça ne focntionne pas ...
Peut-être as-tu aussi une solution pr ce nouveau problème.
En tous cas un grd, grd merci pour la solus _global !!! ça m'a déjà bien avancé
christ_l
Messages postés6Date d'inscriptionvendredi 26 décembre 2003StatutMembreDernière intervention 9 août 2011 14 avril 2008 à 20:54
Re ...
Alors c ok pr le positionnement du swf externe !!! trop cool
J'ai rajouter ce code sur le clip qui appel le swf externe :
stop();
var myMCL = new MovieClipLoader();
//.loadClip(URL,cible)
myMCL.loadClip(couleur + ".swf",this);
positionx= _x;
positiony= _y;
this._x=200;
this._y=200;
Voili, mon problème est résolu encore merci à dj_ouf sans qui je n'aurais pas pu avançé.
Christelle
(yeah trop contente)
dj_ouf
Messages postés221Date d'inscriptionvendredi 15 avril 2005StatutMembreDernière intervention 6 septembre 2011 15 avril 2008 à 09:51
Lol pas de quoi!
Mais d'une manière générale il vaut mieux éviter les déclarations de variables en _global... et utiliser à la place des variables locales dans le même "domaine".
Mais dans d'autres cas, cela peut quand même être utile.
ps : a tu peux un gestionnaire de chargement pour ton clip loadé ? à l'aide de la function onLoadComplete() ou encore onInit() ? C'est recommandé pour les initialisations des données externes chagées, comme dans ton cas avec les positionnements graphiques. :)