cs_michto
Messages postés79Date d'inscriptiondimanche 26 octobre 2003StatutMembreDernière intervention11 août 2005
-
23 juin 2005 à 10:27
cs_Yousr31
Messages postés6Date d'inscriptionmardi 3 mars 2009StatutMembreDernière intervention29 décembre 2010
-
3 mars 2009 à 15:51
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.
cs_Yousr31
Messages postés6Date d'inscriptionmardi 3 mars 2009StatutMembreDernière intervention29 décembre 2010 3 mars 2009 à 15:51
Salut juste je veux quelque expilcation puisque je suis debutante
*numMenu = this._parent._name.substr (7, 11); {le 7 et le 11 comment tu la choisis
*this.attachMovie ("menu_mc", "menu_mc" + i, i * 1);
*trace("Titre: " + this._parent._parent._parent.menus[numMenu].childNodes[numSousMenu].attributes.titre);
*this["menu_mc" + i]._x = this["menu_mc" + (i - 1)]._x + 66;
à qoui sert ces lignes??
et la fonction "trace" sert elle à afficher les donner si oui pourquoi donc tu l'a utulisé comme suit [trace("Nom SousMenu: " + nomSousMenu);] comme si tu vas faire un affichage normal
enfin les question sont un peu débile mais il poser des question pour savoir et maitriser bien les choses une fois pour toute
ghool
Messages postés1Date d'inscriptionmercredi 30 janvier 2008StatutMembreDernière intervention23 mars 2008 23 mars 2008 à 13:20
Salut el magico je comprend pas une chose tu fai reference dans ton xml pour chaque sous menu a un launch d une image et d un clip swf..., mais je comprend pas en quoi sert texte et fichier.. est il possible de charger un texte dynamiquement via ce bouton ??
Si oui faut il faire un fichier .txt anexe ???
A quoi sert la reference fichier ??? comment s en servir???
Exemple du XML
<sous_menu titre="MENU 1A" contenu="Contenu 1A" image="menu1A.jpg" clip="menu1A.swf" texte="Le texte du contenu 1A" fichier="menu1A.xml" />
desole je suis plus graphiste que codeur et j apprend si l'un de vous pourrai m eclairer sur le sujet , je lui serai bien reconnaissant...
Merci d avance et longue vie a flashkod.. ca aide les nul comme moi....
xtremlyhappy
Messages postés1Date d'inscriptionlundi 30 avril 2007StatutMembreDernière intervention 3 juillet 2007 3 juil. 2007 à 13:52
Bravo 30 000 fois, c'est du vrai bon boulot !!!
Par contre en parfait amateur, comment rajouter une action à chaque sous menu (url, mailto, etc..)
asdeejay
Messages postés9Date d'inscriptionjeudi 24 février 2005StatutMembreDernière intervention10 juillet 2008 18 janv. 2007 à 03:02
Salut a tous,merci elmagico j'ai beaucoup appri grace a ton code.
mais j'aimerai savoir comment faire pour controler le clip qui est chargé.C'est a dire (stopper, rembobiner ...),grace a un script sur des boutons qui se trouve sur la scene .Et merci
signez2m
Messages postés2Date d'inscriptionvendredi 25 novembre 2005StatutMembreDernière intervention20 septembre 2006 2 août 2006 à 16:09
Salut el magico je comprend pas une chose tu fai reference dans ton xml pour chaque sous menu a un launch d une image et d un clip swf..., mais je comprend pas en quoi sert texte et fichier.. est il possible de charger un texte dynamiquement via ce bouton ??
Si oui faut il faire un fichier .txt anexe ???
A quoi sert la reference fichier ??? comment s en servir???
Exemple du XML
<sous_menu titre="MENU 1A" contenu="Contenu 1A" image="menu1A.jpg" clip="menu1A.swf" texte="Le texte du contenu 1A" fichier="menu1A.xml" />
desole je suis plus graphiste que codeur et j apprend si l'un de vous pourrai m eclairer sur le sujet , je lui serai bien reconnaissant...
Merci d avance et longue vie a flashkod.. ca aide les nul comme moi....
Askul
Messages postés4Date d'inscriptionlundi 13 mars 2006StatutMembreDernière intervention22 octobre 2007 11 juil. 2006 à 10:52
Hello ElMagico, ton menu est très simpa et facile à comprendre par contre j'ai un hic! J'esseille de mettre ta mise à jour, donc tout le code sur la premiere frame au niveau du calque de chargement du fichier XML. Mais doit je suprimer tout bout de code sur tout les objets. Ou doit-je en laisser une partie. Et si oui la quelle ?
Si tu pouvais éclairer ma petite lanterne car c'est un peu le brouillard pr moi ;)
Merci d'avence
dexmlo
Messages postés1Date d'inscriptionsamedi 3 avril 2004StatutMembreDernière intervention24 septembre 2005 24 sept. 2005 à 02:23
Bonjour Elmagico il m'est très utile ton code. J'ai modifié ton exemple pour l'adapter à mes besoins. J'ai essayé de l'utiliser mais j'ai encore un petit problème de configuration.
(Au fait, je suis débutant dans la prog, j'essaye de comprendre mais parfois c'est compliqué surtout si c'est dynamique.)
Voici mes questions :
- Comment puis-je donner un ordre 'gotoandplay' dans un autre niveau (que le menu) sur base de l'action d'un btn du sous menu ?
Ton menu ne peut pointer que vers les attributs que tu as dans le fichier xml ?
- Dans le chargement de clip dans le sous_menu_mc, j'aimerais utiliser 'LoadMovieNum' au lieu d'avoir un clip conteneur....mais cela ne fonctionne pas. Je ne suis pas assez calé pour modifier cela. Comment dois-je modifier ton code ?
on(release){
nom = _parent.nom
sousmenu = this._name.substr(12,16);
// on charge un clip
this._parent._parent.loader_mc_clip.contentPath = (_parent._parent.menus[nom].childNodes[sousmenu].attributes.clip);
this._parent._parent.loadMovie(_parent._parent.menus[nom].childNodes[sousmenu].attributes.clip);
}
Merci pour tes réponses.
Lo
elmagico
Messages postés30Date d'inscriptionmercredi 6 octobre 2004StatutMembreDernière intervention21 janvier 2006 28 juin 2005 à 01:52
Bahh koi c'est si null que ca, je pensait pas !!! Plus un seul commentaires ! Bein alors c koi qui vous faut ! Mdr lol, quand meme 2 jours pour comprendre tout le fonctionement de movie clip, de l'attachMovieClip ... Pas grave ... Alors c quoi qui vous interessent pour le moment ... Mdr ...
elmagico
Messages postés30Date d'inscriptionmercredi 6 octobre 2004StatutMembreDernière intervention21 janvier 2006 24 juin 2005 à 05:23
Bonsoir tout le monde, voila une petite mise a jour suivant les conseils, précieux héhé de Michto ... Le script est reduit dans une seul frame, plus rien sur aucun clip !!! Mais par contre plus de fonctions rollOver ou quoi que ce soit ...
// --- Objet XML ---
XMLmenu = new XML ();
XMLmenu.ignoreWhite = true;
XMLmenu.onLoad = function (charge)
{
if (charge)
{
trace ("Chargement ok!");
afficherMenu ();
return;
}
trace ("Erreur!");
};
XMLmenu.load ("menu.xml");
// --- Fonctions ---
// affichage du menu
afficherMenu = function ()
{
menus = this.XMLmenu.firstChild.childNodes;
for (i = 0; i < _root.menus.length; i++)
{
this.attachMovie ("menu_mc", "menu_mc" + i, i * 1);
this["menu_mc" + i].sous_menu_mc._visible = 0;
this["menu_mc" + i].titre = (this.menus[i].attributes.titre);
this["menu_mc" + i]._x = this["menu_mc" + (i - 1)]._x + 82;
this["menu_mc" + i].menu_btn.onRollOver = function ()
{
nomMenu = this._parent._name;
numMenu = this._parent._name.substr (7, 11);
afficherSoumenu ();
};
}
};
// affichage des sous menu
afficherSoumenu = function ()
{
trace ("Nom menu_mc: " + nomMenu);
trace ("Numero menu_mc:" + numMenu);
trace ("Nombre d'enfants: " + this.menus[numMenu].childNodes.length);
trace ("Titre du menu: " + this.menus[numMenu].attributes.titre);
trace ("Enfants du menu:" + this.menus[numMenu].childNodes);
trace("----------------------");
for (k = 0; k < this.menus[numMenu].childNodes.length; k++)
{
var sousMenu = this[nomMenu].sous_menu_mc.duplicateMovieClip("sous_menu_mc"+(k*1),(k*1));
J'ai mis tout les résultats necessaires pour bien comprendre le fonctionement des clips, attachMovie, duplicateMovieClip, varaiables dynamiques... J'espère avoir encore des commentaires, et encore et biensure si il y a des erreurs, corrections ou suggestions n'esitez pas !
Merci.
cs_michto
Messages postés79Date d'inscriptiondimanche 26 octobre 2003StatutMembreDernière intervention11 août 2005 23 juin 2005 à 15:26
L'effacement : ok, ça marche (et c'est déjà super!) Mais c'est jamais top d'effectuer des tests lorsque ce n'est pas nécessaire (utilise ressource processeur, pas mémoire). Dans ton cas, un simple onMouseMove pourrait déjà reduire leur nombre. (mais je pinaille ;) ) Concernant le clip vide, tu as raison : ça ne marche pas (probléme de superposition de zone active !!)
Pour les com, lol, t'as encor raison !!
elmagico
Messages postés30Date d'inscriptionmercredi 6 octobre 2004StatutMembreDernière intervention21 janvier 2006 23 juin 2005 à 13:51
Tout d'abord merci pour ton com.
Pour le code trop découpeé c bien vrais mais je n'arrive tjs pas a le minimiser ds la prem!ère frame ...
Problème de recupration des nom crée dynamiquement si la fonction n'est pa sur eux meme...
Oui merci pour le nom de mes variables, c vrais que ca voulais rien dire pour celui qui comprend pas ;)
Pour l'affacement du menu, j'avais justement commencer avec un clip vide qui devait prendre la taille de mon menu un setSize en fonction du nombre de sousmenu, multiplier par la hauteur d'un sousmenu. Mais ca marchais pas terrible.
Pourquoi ma manière n'est pas bonne, le résultat y est, c comme un clip vide sauf que c un zone definie "virtuelement", ca demande de la memoir pr verifier constament la position c ca l'inconvenient ?
Pour les commentaires bien oui si ils sont la on peut tjs les retirés, si ils n'y sont pas, c'est plus embetant.
Encore, merci ... ;)
cs_michto
Messages postés79Date d'inscriptiondimanche 26 octobre 2003StatutMembreDernière intervention11 août 2005 23 juin 2005 à 10:27
- Le résultat final est pas mal (propre), mais :
- Code trop découpé (à mon gout). En utilisant la gestion d'événement monObjet.onEvenement = function (){} tu regroupe tout à la racine (c'est plus lisible pour les autres...)
- Certain nom de variable pourrait être mieux choisi (ex : posYmenu, et posYbismenu => posYminMenu et posYmaxMenu...)
NB : petite erreur sur Ymax : this._height (n'oublie pas le "_"...)
- Pour effacer ton menu, tu teste en permanence (toute les images) la position de la souris...En utilisant monClip.onRollOut,(avec un clip transparent comme zone active) tu devrais pouvoir ameliorer les choses.
- Et enfin, mais c'est discutable, tu commente peut-être un poil trop...(certain ne font que paraphraser la ligne de code...) Si tu débute, c'est normal. Plustard, tu commenteras de façon plus globale...
3 mars 2009 à 15:51
*numMenu = this._parent._name.substr (7, 11); {le 7 et le 11 comment tu la choisis
*this.attachMovie ("menu_mc", "menu_mc" + i, i * 1);
*trace("Titre: " + this._parent._parent._parent.menus[numMenu].childNodes[numSousMenu].attributes.titre);
*this["menu_mc" + i]._x = this["menu_mc" + (i - 1)]._x + 66;
à qoui sert ces lignes??
et la fonction "trace" sert elle à afficher les donner si oui pourquoi donc tu l'a utulisé comme suit [trace("Nom SousMenu: " + nomSousMenu);] comme si tu vas faire un affichage normal
enfin les question sont un peu débile mais il poser des question pour savoir et maitriser bien les choses une fois pour toute
23 mars 2008 à 13:20
Si oui faut il faire un fichier .txt anexe ???
A quoi sert la reference fichier ??? comment s en servir???
Exemple du XML
<sous_menu titre="MENU 1A" contenu="Contenu 1A" image="menu1A.jpg" clip="menu1A.swf" texte="Le texte du contenu 1A" fichier="menu1A.xml" />
desole je suis plus graphiste que codeur et j apprend si l'un de vous pourrai m eclairer sur le sujet , je lui serai bien reconnaissant...
Merci d avance et longue vie a flashkod.. ca aide les nul comme moi....
3 juil. 2007 à 13:52
Par contre en parfait amateur, comment rajouter une action à chaque sous menu (url, mailto, etc..)
18 janv. 2007 à 03:02
mais j'aimerai savoir comment faire pour controler le clip qui est chargé.C'est a dire (stopper, rembobiner ...),grace a un script sur des boutons qui se trouve sur la scene .Et merci
2 août 2006 à 16:09
Si oui faut il faire un fichier .txt anexe ???
A quoi sert la reference fichier ??? comment s en servir???
Exemple du XML
<sous_menu titre="MENU 1A" contenu="Contenu 1A" image="menu1A.jpg" clip="menu1A.swf" texte="Le texte du contenu 1A" fichier="menu1A.xml" />
desole je suis plus graphiste que codeur et j apprend si l'un de vous pourrai m eclairer sur le sujet , je lui serai bien reconnaissant...
Merci d avance et longue vie a flashkod.. ca aide les nul comme moi....
11 juil. 2006 à 10:52
Si tu pouvais éclairer ma petite lanterne car c'est un peu le brouillard pr moi ;)
Merci d'avence
24 sept. 2005 à 02:23
(Au fait, je suis débutant dans la prog, j'essaye de comprendre mais parfois c'est compliqué surtout si c'est dynamique.)
Voici mes questions :
- Comment puis-je donner un ordre 'gotoandplay' dans un autre niveau (que le menu) sur base de l'action d'un btn du sous menu ?
Ton menu ne peut pointer que vers les attributs que tu as dans le fichier xml ?
- Dans le chargement de clip dans le sous_menu_mc, j'aimerais utiliser 'LoadMovieNum' au lieu d'avoir un clip conteneur....mais cela ne fonctionne pas. Je ne suis pas assez calé pour modifier cela. Comment dois-je modifier ton code ?
on(release){
nom = _parent.nom
sousmenu = this._name.substr(12,16);
// on charge un clip
this._parent._parent.loader_mc_clip.contentPath = (_parent._parent.menus[nom].childNodes[sousmenu].attributes.clip);
this._parent._parent.loadMovie(_parent._parent.menus[nom].childNodes[sousmenu].attributes.clip);
}
Merci pour tes réponses.
Lo
28 juin 2005 à 01:52
24 juin 2005 à 05:23
// --- Objet XML ---
XMLmenu = new XML ();
XMLmenu.ignoreWhite = true;
XMLmenu.onLoad = function (charge)
{
if (charge)
{
trace ("Chargement ok!");
afficherMenu ();
return;
}
trace ("Erreur!");
};
XMLmenu.load ("menu.xml");
// --- Fonctions ---
// affichage du menu
afficherMenu = function ()
{
menus = this.XMLmenu.firstChild.childNodes;
for (i = 0; i < _root.menus.length; i++)
{
this.attachMovie ("menu_mc", "menu_mc" + i, i * 1);
this["menu_mc" + i].sous_menu_mc._visible = 0;
this["menu_mc" + i].titre = (this.menus[i].attributes.titre);
this["menu_mc" + i]._x = this["menu_mc" + (i - 1)]._x + 82;
this["menu_mc" + i].menu_btn.onRollOver = function ()
{
nomMenu = this._parent._name;
numMenu = this._parent._name.substr (7, 11);
afficherSoumenu ();
};
}
};
// affichage des sous menu
afficherSoumenu = function ()
{
trace ("Nom menu_mc: " + nomMenu);
trace ("Numero menu_mc:" + numMenu);
trace ("Nombre d'enfants: " + this.menus[numMenu].childNodes.length);
trace ("Titre du menu: " + this.menus[numMenu].attributes.titre);
trace ("Enfants du menu:" + this.menus[numMenu].childNodes);
trace("----------------------");
for (k = 0; k < this.menus[numMenu].childNodes.length; k++)
{
var sousMenu = this[nomMenu].sous_menu_mc.duplicateMovieClip("sous_menu_mc"+(k*1),(k*1));
sousMenu.soustitre = (this.menus[numMenu].childNodes[k].attributes.titre);
sousMenu._y = this[nomMenu]["sous_menu_mc"+((k-1)*1)]._y+20;
sousMenu.sous_menu_btn.onRollOver = function ()
{
nomSousMenu = this._parent._name;
numSousMenu = this._parent._name.substr (12, 16);
trace("Nom SousMenu: " + nomSousMenu);
trace("Numero: " + numSousMenu);
trace("Nom Menu: " + nomMenu);
trace("Numero: " + numMenu);
trace("Titre: " + this._parent._parent._parent.menus[numMenu].childNodes[numSousMenu].attributes.titre);
trace("Contenu: " + this._parent._parent._parent.menus[numMenu].childNodes[numSousMenu].attributes.contenu);
trace("----------------------");
};
}
};
J'ai mis tout les résultats necessaires pour bien comprendre le fonctionement des clips, attachMovie, duplicateMovieClip, varaiables dynamiques... J'espère avoir encore des commentaires, et encore et biensure si il y a des erreurs, corrections ou suggestions n'esitez pas !
Merci.
23 juin 2005 à 15:26
Récup des "noms dynamiques":
http://www.flashkod.com/forum.v2.aspx?ID=492559 et je suis sur qu'il y en a d'autre !!
L'effacement : ok, ça marche (et c'est déjà super!) Mais c'est jamais top d'effectuer des tests lorsque ce n'est pas nécessaire (utilise ressource processeur, pas mémoire). Dans ton cas, un simple onMouseMove pourrait déjà reduire leur nombre. (mais je pinaille ;) ) Concernant le clip vide, tu as raison : ça ne marche pas (probléme de superposition de zone active !!)
Pour les com, lol, t'as encor raison !!
23 juin 2005 à 13:51
Pour le code trop découpeé c bien vrais mais je n'arrive tjs pas a le minimiser ds la prem!ère frame ...
Problème de recupration des nom crée dynamiquement si la fonction n'est pa sur eux meme...
Oui merci pour le nom de mes variables, c vrais que ca voulais rien dire pour celui qui comprend pas ;)
Pour l'affacement du menu, j'avais justement commencer avec un clip vide qui devait prendre la taille de mon menu un setSize en fonction du nombre de sousmenu, multiplier par la hauteur d'un sousmenu. Mais ca marchais pas terrible.
Pourquoi ma manière n'est pas bonne, le résultat y est, c comme un clip vide sauf que c un zone definie "virtuelement", ca demande de la memoir pr verifier constament la position c ca l'inconvenient ?
Pour les commentaires bien oui si ils sont la on peut tjs les retirés, si ils n'y sont pas, c'est plus embetant.
Encore, merci ... ;)
23 juin 2005 à 10:27
- Code trop découpé (à mon gout). En utilisant la gestion d'événement monObjet.onEvenement = function (){} tu regroupe tout à la racine (c'est plus lisible pour les autres...)
- Certain nom de variable pourrait être mieux choisi (ex : posYmenu, et posYbismenu => posYminMenu et posYmaxMenu...)
NB : petite erreur sur Ymax : this._height (n'oublie pas le "_"...)
- Pour effacer ton menu, tu teste en permanence (toute les images) la position de la souris...En utilisant monClip.onRollOut,(avec un clip transparent comme zone active) tu devrais pouvoir ameliorer les choses.
- Et enfin, mais c'est discutable, tu commente peut-être un poil trop...(certain ne font que paraphraser la ligne de code...) Si tu débute, c'est normal. Plustard, tu commenteras de façon plus globale...
Donc, un bon début. Bon code. A+