celbob
Messages postés24Date d'inscriptionvendredi 14 février 2003StatutMembreDernière intervention21 janvier 2009
-
21 janv. 2009 à 10:56
celbob
Messages postés24Date d'inscriptionvendredi 14 février 2003StatutMembreDernière intervention21 janvier 2009
-
21 janv. 2009 à 14:33
Bonjour,
Je souhaite faire une présentation de photos ; pour cela, j'ai un swf principal contenant des boutons/liens pour ouvrir les photos. En cliquant sur un bouton, ça charge un autre swf qui présente alors les photos. Ce swf vient recouvrir mes boutons, mais ces derniers restant actifs font s'afficher la main. Mon but est donc de rendre "enable=0" les boutons quand un swf est chargé dans le swf principal.
Pour cela, dans le swf loadé, j'ai mis, au 1er niveau, un calque spécifique "actions" avec sur les clés concernées l'action suivante :
this._parent.NomDuBouton.enabled = 0;
j'ai aussi essayé
_parent._parent.NomDuBouton.enabled = 0;
et aussi en triplant _parent au cas où ...
Mais rien ne marche.
Mes boutons à rendre "enable=0" sont au 1er niveau de mon swf principal et mon code avec _parent ... est au 1er niveau de mon swf loadé. Du coup, je ne vois pas ce qui cloche.
J'ai testé la partie NomDuBouton.enabled = 0; , et elle marche qd je l'applique dans un autre contexte, donc j'en déduis que le problème vient du chemin que j'indique dans mon swf loadé pour remonter vers mon swf principal.
Si qq un pouvait m'aider en me disant d'où vient mon erreur, ça m'arrangerait vraiment.
Merci d'avance
celbob
Messages postés24Date d'inscriptionvendredi 14 février 2003StatutMembreDernière intervention21 janvier 2009 21 janv. 2009 à 11:08
Ben oui, je ne sais pas pourquoi y'a plus les sauts de ligne ???
Donc, je souhaite faire une présentation de photos ; pour cela, j'ai un swf principal contenant des boutons/liens pour ouvrir les photos.
En cliquant sur un bouton, ça charge un autre swf qui présente alors les photos. Ce swf vient recouvrir mes boutons, mais ces derniers restant actifs font s'afficher la main.
Mon but est donc de rendre "enable=0" les boutons quand un swf est chargé dans le swf principal. Pour cela, dans le swf loadé, j'ai mis, au 1er niveau, un calque spécifique "actions" avec sur les clés concernées l'action suivante :
this._parent.NomDuBouton.enabled = 0;
j'ai aussi essayé _parent._parent.NomDuBouton.enabled = 0;
et aussi en triplant _parent au cas où ...
Mais rien ne marche.
Mes boutons à rendre "enable=0" sont au 1er niveau de mon swf principal et mon code avec _parent ... est au 1er niveau de mon swf loadé. Du coup, je ne vois pas ce qui cloche.
J'ai testé la partie NomDuBouton.enabled = 0; , et elle marche qd je l'applique dans un autre contexte, donc j'en déduis que le problème vient du chemin que j'indique dans mon swf loadé pour remonter vers mon swf principal.
Si qq un pouvait m'aider en me disant d'où vient mon erreur, ça m'arrangerait vraiment.
celbob
Messages postés24Date d'inscriptionvendredi 14 février 2003StatutMembreDernière intervention21 janvier 2009 21 janv. 2009 à 11:36
Burnside, je viens d'essayer avec true et false, mais je confirme que le problème ne vient pas de là.
J'ai déjà testé uniquement la partie "enabled" en la mettant dans mon swf principal, directement sur mes boutons et là je n'ai pas de problème.
C'est quand je place le code dans le swf loadé que ça ne marche plus ... car je pense qu'il ne trouve pas le chemin, mais je ne vois pas pourquoi.
celbob
Messages postés24Date d'inscriptionvendredi 14 février 2003StatutMembreDernière intervention21 janvier 2009 21 janv. 2009 à 11:38
Faiblard, c'est spécialement pour toi, en changeant la textbox !
Cette fois, je suis sûre que tu vas pouvoir me répondre, tellement c'est lisible ;-)
je souhaite faire une présentation de photos ; pour cela, j'ai un swf principal contenant des boutons/liens pour ouvrir les photos.
En cliquant sur un bouton, ça charge un autre swf qui présente alors les photos. Ce swf vient recouvrir mes boutons, mais ces derniers restant actifs font s'afficher la main.
Mon but est donc de rendre "enable=0" les boutons quand un swf est chargé dans le swf principal. Pour cela, dans le swf loadé, j'ai mis, au 1er niveau, un calque spécifique "actions" avec sur les clés concernées l'action suivante :
this._parent.NomDuBouton.enabled = 0;
j'ai aussi essayé
_parent._parent.NomDuBouton.enabled = 0;
et aussi en triplant _parent au cas où ...
Mais rien ne marche.
Mes boutons à rendre "enable=0" sont au 1er niveau de mon swf principal et mon code avec _parent ... est au 1er niveau de mon swf loadé. Du coup, je ne vois pas ce qui cloche. J'ai testé la partie NomDuBouton.enabled = 0; , et elle marche qd je l'applique dans un autre contexte, donc j'en déduis que le problème vient du chemin que j'indique dans mon swf loadé pour remonter vers mon swf principal.
Si qq un pouvait m'aider en me disant d'où vient mon erreur, ça m'arrangerait vraiment.
celbob
Messages postés24Date d'inscriptionvendredi 14 février 2003StatutMembreDernière intervention21 janvier 2009 21 janv. 2009 à 12:48
oui, j'ai testé la proposition de burnside, mais ça ne change rien. Le fait de mettre 0 ou false est identique (d'après les tests).
J'ai testé sur un swf seul en mettant le code suivant au 1er niveau du swf :
NomDuBouton.enabled =0;
et aussi
NomDuBouton.enabled = false;
Dans les 2 cas, l'action est bien interprétée et le bouton devient inactif. (inversement avec 1 ou true).
Mais si j'applique un code similaire en essayant d'indiquer un chemin pour que l'action souhaitée s'applique à un bouton du swf principal, là ça ne marche plus.
J'ai essayé ta solution avec _root, mais ça ne marche pas non plus, puisqu'il s'arrête au clip loadé, mais ne remonte pas au swf principal (j'en ai eu la confirmation en ajoutant une copie d'un bouton dans mon swf loadé. Avec _root et enabled = 0 le bouton dans le swf loadé est bien inactif).
celbob
Messages postés24Date d'inscriptionvendredi 14 février 2003StatutMembreDernière intervention21 janvier 2009 21 janv. 2009 à 14:07
Je suis en as 2.
Pour t'expliquer le montage de mes swf, il est très simple :
J'ai un swf A composé de 4 clés. Chaque clé représente une page du site. Sur la clé 3 se trouvent les boutons qui une fois cliqués, loadent un swf B ou C ... correspondant à des photos. Chaque bouton porte un nom, ex : bcrea1
Sur le bouton bcrea1, j'ai mis l'action :
on(release){
loadMovie( "crea1.swf", 1 )
}
Puis à côté de ça, j'ai un fichier swf nommé "crea1".
Sur ce fichier, j'ai un calque spécifique d'actions, avec comme action :
_root.bcrea1.enabled = 0;
j'ai aussi essayé :
_parent._parent.bcrea1.enabled = 0;
et :
this._parent.bcrea1.enabled = 0;
Les 3 versions ne marchent pas.
Si tu veux, je peux te faire passer les fichiers par mail (mais je ne sais pas comment on fait car je suis pas très experte de l'interface de ce site ... comme tu l'auras déjà remarqué ;-)
celbob
Messages postés24Date d'inscriptionvendredi 14 février 2003StatutMembreDernière intervention21 janvier 2009 21 janv. 2009 à 14:33
Re,
finalement, j'ai trouvé ce qui clochait. En voulant unloadé mon swf B, comme ça ne marchait pas (non plus !), je me suis rendu compte qu'il fallait charger le swf B dans un clip (que j'ai nommé "loader") positionné au 1er niveau de mon swf A.
Du coup mon code sur le bouton du swf A devient :
on(release){
loader.loadMovie( "nomDuFichier.swf", 1 )
}
et non pas
on(release){
loadMovie( "nomDuFichier.swf", 1 )
}
comme j'avais mis au départ.
Ce qui fait que sur mon swf B, je mets le code :
this._parent.nomDuBouton.enabled = 0;
et le bouton qui est sur mon swf A devient inactif.
Voilà, c'était donc un problème de lieu de loadage du swf B.
Merci tout de même à ceux qui se sont donnés la peine de me répondre et de chercher avec moi.