Load movie depuis une variable

Résolu
kwcri Messages postés 23 Date d'inscription mercredi 28 octobre 2009 Statut Membre Dernière intervention 9 mai 2011 - 10 janv. 2011 à 03:12
BBFUNK01 Messages postés 1310 Date d'inscription jeudi 16 juillet 2009 Statut Membre Dernière intervention 20 juin 2014 - 19 janv. 2011 à 17:44
Salut, et Merci d'avance pour votre aide :D

voila mon probleme :
j'ai creer un fichier swf contenant une image. le fichier s'appel : fleur.swf

Dans un autre swf j'ai creer un champs text de saisi (avec la variable: "ma_variable') et un bouton avec l'action suivante :

on (release) {
loadMovie("ma_variable.swf",1);}

ce que j'aimerais c'est que en rentrant (fleur dans mon text de saisi et que en cliquant sur le bouton, cela me charge le fichier fleur.swf

mais stupid comme je suis cela ne fonctionne pas.
please help me :)

15 réponses

BBFUNK01 Messages postés 1310 Date d'inscription jeudi 16 juillet 2009 Statut Membre Dernière intervention 20 juin 2014 6
16 janv. 2011 à 20:38
Hello,

le chemin de ton swf à charger est correct ? Tu fais bien ceci :
loadMovie(contenu, conteneur); ?
Sachant que le contenu c'est le swf à charger et le conteneur c'est... Le conteneur quoi .

A plus ,

BBFUNK01
//C'est en forgeant qu'on devient forgeron... ;-) ;
3
pegase31 Messages postés 6138 Date d'inscription dimanche 21 décembre 2003 Statut Modérateur Dernière intervention 4 septembre 2013 11
10 janv. 2011 à 05:37
bonjour, pour concaténer deux choses, il faut utiliser le "+" comme ceci :

variable+"texte"


Peg'
0
kwcri Messages postés 23 Date d'inscription mercredi 28 octobre 2009 Statut Membre Dernière intervention 9 mai 2011
10 janv. 2011 à 13:57
Bonjour Peg et merci pour cette reponse, cependant je ne comprends toujours pas vraiement...:(

variable+"texte" ok mais quel texte?

ce que je veux :

j'ai par exemple 4 fichier swf

fleur.swf
maison.swf
homme.swf
femme.swf

je veux taper dans un champs text le nom du fichier que je veux charger via loadmovie
puis en cliquant sur le bonton ok cela me charge le fichier swf que j'ai taper

si je tape: "fleur" puis que je clique sur ok ca ouvre fleur.swf
si je tape "maison" ca ouvre maison.swf ect...

merci encore !
0
BBFUNK01 Messages postés 1310 Date d'inscription jeudi 16 juillet 2009 Statut Membre Dernière intervention 20 juin 2014 6
11 janv. 2011 à 09:41
Hello,

un exemple simple :
var ma_variable:String = "animation";

bouton.onRelease = function(){
loadMovie(ma_variable + ".swf",1)
}


Après si tu as plusieurs extensions à gérer tu peux aussi définir des variables pour ces extensions :
var ma_variable:String = "animation";

var Ex1:String = ".swf";
var Ex2:String = ".png";

bouton.onRelease = function(){
loadMovie(ma_variable + Ex1, 1);
}


A plus ,

BBFUNK01
//C'est en forgeant qu'on devient forgeron... ;-) ;
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
kwcri Messages postés 23 Date d'inscription mercredi 28 octobre 2009 Statut Membre Dernière intervention 9 mai 2011
13 janv. 2011 à 10:51
Salut BBFUNK01,

je vais tester ca ce soir et je te tiens au courant ! merci bcp en tt cas
0
kwcri Messages postés 23 Date d'inscription mercredi 28 octobre 2009 Statut Membre Dernière intervention 9 mai 2011
13 janv. 2011 à 12:29
Re, je viens de tester cela et ca ne marche malheuresement pas
quand je clique sur mon bouton rien ne se passe...

j'ai proceder comme suit :

1 jai creer mon text dynamique avec la variable (ma_variable)
2 j'ai creer un bouton portant l'occurance(bouton)
3 sur l'image clé, j'ai deposer ton code

{var ma_variable:String = "animation";

bouton.onRelease = function(){
loadMovie(ma_variable + ".swf",1)
}
)

j'ai creer un autre swf que j'ai nommee "maison"

lorsque j'ouvre mon annimation j'ai bien (annimation qui apparait sur le champs (ma_variable) , je tape "maison" a la place et lorsque je clique sur mon bouton ...rien ne se passe:( pas de load movie...

j'ai deposer le fichier source ici :
http://squall.linear.free.fr/testfls.zip

merci bcp
0
kwcri Messages postés 23 Date d'inscription mercredi 28 octobre 2009 Statut Membre Dernière intervention 9 mai 2011
14 janv. 2011 à 16:36
je suis desesperer lol , y aurait il une âme charitable? :D
0
BBFUNK01 Messages postés 1310 Date d'inscription jeudi 16 juillet 2009 Statut Membre Dernière intervention 20 juin 2014 6
16 janv. 2011 à 03:34
Hello,

si le swf à charger est le contenu qui a été saisi dans le champ de texte dynamique il faut que tu indiques cela dans ton code, car pour le coup là tu charges la valeur de "ma_variable" qui est "animation" et non "maison". Il faut donc intialiser la valeur de "ma_variable" lorsque le champ de texte dynamique est rempli, d'ailleurs tu n'as pas besoin du coup de définir la valeur de "ma_variable" au début du code, un simple :
var ma_variable:String;

...suffira.

Et pour intialiser "ma_variable", il suffit de rajouter une ligne de code dans l'action de ton bouton (que tu aurais pu trouver aisément je pense si tu avais réfléchi ) :
bouton.onRelease = function(){
ma_variable = champ.text;
loadMovie(ma_variable + ".swf",1)
}


Et il est préférable de définir ton champ de texte dynamique avec un nom d'occurrence plutôt qu'un nom de variable, donc dans l'exemple ton champ de texte dynamique s'appellerait donc "champ".

A plus ,

BBFUNK01
//C'est en forgeant qu'on devient forgeron... ;-) ;
0
kwcri Messages postés 23 Date d'inscription mercredi 28 octobre 2009 Statut Membre Dernière intervention 9 mai 2011
16 janv. 2011 à 16:36
merci de ne pas me laisser tomber lol enfin je dois être maudit ...
as tu tester ton code? car même si tes explications sont très claire, cela ne fonctionne pas chez moi... enfin je suis peut être vraiment pas doué :(

j'ai mis le code suivant sur mon image clé:

var ma_variable:String;

bouton.onRelease = function(){
ma_variable = champ.text;
loadMovie(ma_variable + ".swf",1)
}


et mis 'champ' comme nom a mon texte de saisie.

est ce que cela fonctionne chez toi? ou alors c'est moi qui suis tellement stupide au point de ne pas etre capable d'appliquer correctement tes conseils

merci encore pour ton temps et ton aide
0
kwcri Messages postés 23 Date d'inscription mercredi 28 octobre 2009 Statut Membre Dernière intervention 9 mai 2011
17 janv. 2011 à 05:05
bien mon fichier swf a charger est a la racine de mon fichier swf principal
par exemple si je fais :
loadMovie("maison.swf",1)

la ca marche sans problem, mais si je fais un load movie via une variable la rien ne se passe...

par exemple
var ma_variable:String;

bouton.onRelease = function(){
ma_variable = champ.text;
loadMovie(ma_variable + ".swf",1)
}


voici mon fichier : http://squall.linear.free.fr/load.zip

Thx :)
0
BBFUNK01 Messages postés 1310 Date d'inscription jeudi 16 juillet 2009 Statut Membre Dernière intervention 20 juin 2014 6
17 janv. 2011 à 06:15
Hello,

je jetterai un oeil à ton fichier cet après-midi car là je n'ai pas Flash sous la main.

A plus ,

BBFUNK01
//C'est en forgeant qu'on devient forgeron... ;-) ;
0
kwcri Messages postés 23 Date d'inscription mercredi 28 octobre 2009 Statut Membre Dernière intervention 9 mai 2011
17 janv. 2011 à 10:17
Merci beaucoup!!

je vais prier pour que tu puisses trouver d'ou vient le problème :D
0
kwcri Messages postés 23 Date d'inscription mercredi 28 octobre 2009 Statut Membre Dernière intervention 9 mai 2011
18 janv. 2011 à 12:50
Merci du fond du coeur a toi BBFUNK01 ca marche nikel !!!
enfaite le problème venait du fait que je soit complètement stupide et pourtant tu m'avais bien dit contenue, conteneur mais je n'avais pas de conteneur. pffff so stupid :D
j'ai donc créer un clip vide avec pour nom d'occurrence "main" afin d'avoir mon conteneur

et maintenant ca marche!!!

var ma_variable:String;

bouton.onRelease = function(){
ma_variable = champ.text;
loadMovie(ma_variable + ".swf",main);
}



j'en profite vu que tu es super cale sur le sujet :D pour te demander si tu aurais pas un petit code pour charger des images

j'ai par exemple : des images dans un dossier avec des noms qui se suivent genre img01, img02, img03, img04...ect

dans flash je suppose que je dois
initialiser une variable a 0
par exemple i= 0;
créer un conteneur "image"
2 boutons "suivant et précèdent"

donc quand je clic sur suivant ca incremente

suivant.onRelease = function(){
loadMovie("img" + i + ".jpg",image);
}
i=+1;

mais pour le bouton suivant je ne sais pas comment faire une décrémentation de i...

hesite pas a me dire si mon code est tt faux hihi
0
kwcri Messages postés 23 Date d'inscription mercredi 28 octobre 2009 Statut Membre Dernière intervention 9 mai 2011
18 janv. 2011 à 13:21
je te fais un etat de ma progression...
i=0;

suivant.onRelease = function(){
i=i+1;
if (i>4) {i=1;}

loadMovie("img" +i+ ".jpg",image);

}

precedent.onRelease = function(){
i=i-1;
if (i<1) {i=4;}
loadMovie("img" +i+ ".jpg",image);

}

la sa marche, mais j'ai 2 problèmes...

le premier et il est de taille, c'est la taille des images je ne sais pas si il y aurait un moyen de les redimensionner automatiquement.

le deuxième, j'aimerais ne pas spécifier la limite des images
ce que je veux dire c'est que dans cet exemple il y a 4 images mais si il y en aurais 10 cela ne serais limiter qu'au 4 images si je supprime les conditions alors cela va m'afficher des blancs...

y aurait t'il un moyen de mettre une condition par exemple (si il y a pas d'image retourner a la precedente ou a la premiere)?

Merci !!
0
BBFUNK01 Messages postés 1310 Date d'inscription jeudi 16 juillet 2009 Statut Membre Dernière intervention 20 juin 2014 6
19 janv. 2011 à 17:44
Hello,

désolé de répondre si tard (pas mal pris en ce moment). Bref, pour répondre à ta question si je puis te conseiller une méthode pour gérer le chargement de tes images avec tous les paramètres qui vont bien, et bien sans hésitation aucune je te recommande de regarder du côté de MovieClipLoader() -> tu pourras ainsi dans les différents écouteurs gérer les dimensions de ton image chargée ainsi que son éventuel redimensionnement avec onLoadInit(). Tu pourras également gérer le chargement de l'image avec onLoadProgress().
Ensuite pour la gestion de ta liste d'image -> array() et xml, en clair tu stockes les chemins de tes images dans un fichier xml (tu peux ajouter plusieurs paramètres : nom de l'image, date, auteur, etc.). Ensuite il te faudra donc charger le fichier xml dans ton flash, c'est donc durant le chargement du xml qu'il faudra que tu effectues une boucle pour remplir ton tableaux avec les différents noeuds de ton fichier.xml. Puis avec MovieClipLoader() tu crées une fonction pour afficher tes images en "configurant" le MovieClipLoader() tel que tu le souhaites et suivant les différentes images et leurs formats.
Pour conclure -> abandonne loadMovie() pour charger des listes d'images, ce n'est pas adapté et c'est trop limité.
Par ailleurs si je peux te donner un autre conseil : étant donné que visiblement tu débutes en Flash, je t'invite à t'orienter vers l'as3 plutôt que de continuer à bosser en as2, car l'as3 est depuis plusieurs années sur la toile et est plus puissant que l'as2. Mais l'as3 est surtout différent de l'as2 sur bon nombre de points, donc ce serait dommage que tu assimiles beaucoup de choses en as2 et que plus tard lorsque tu souhaiteras te mettre à l'as3... tu sois obligé de repartir de zéro.
Mais après à toi de voir .

A plus ,

BBFUNK01
//C'est en forgeant qu'on devient forgeron... ;-) ;
0
Rejoignez-nous