Probleme sur un script de galerie dynamique

bidoutouch Messages postés 1 Date d'inscription vendredi 24 juin 2005 Statut Membre Dernière intervention 23 janvier 2006 - 23 janv. 2006 à 20:47
cortoh Messages postés 1255 Date d'inscription dimanche 18 décembre 2005 Statut Membre Dernière intervention 2 décembre 2008 - 24 janv. 2006 à 02:33
bonjour, j'ai récupéré un code sur internet et après l'avoir
décortiqué, j'ai essayé de l'adapter dans un swf, histoire de voir si
j'avais bien compris le fonctionnement et si je pouvais m'en servir.
C'est un script sur une clé avec un clip qui doit recevoir les images
appelé "cadre"et un clip de chargement appelé "loadbar"que je depose
dans mon swf principal qui permet de lire dynamiquement des images par
le biais d'un xml. Le problème c'est que le script était avec des _root
(étant donné qu'il se suffisait à lui même) et j'ai essayé de le
convertir d'après ce que j'avais compris pour l'integrer dans un swf
(ouh je me répète on dirait)mais ça ne marche pas, il ne lit que les
noms des images tirés du xml mais ne chargent pas les images associées:




en rouge mes annotations de ce que j'ai compris et changé :



// variable de position

_root.INDICE = -1;

_root.PIC = new Array();

//préloader du chargement de l'image (mis en _parent pour éviter qu'il ne se base sur le clip principal)

Ec = new Object();

Ec.onLoadProgress = function(MCtarget, loadedBytes, totalBytes) {

_parent.loadbar.percent = Math.floor(loadedBytes*100/totalBytes);

_parent.loadbar.gotoAndStop(_parent.loadbar.percen t);

_parent.loadbar.percent += "%";

};

Ec.onLoadInit = function(MCtarget) {

while (MCtarget._width>_parent.cadre._width or MCtarget._height>_parent.cadre._height) {

MCtarget._xscale -= 1;

MCtarget._yscale -= 1;

}

MCtarget._x = _parent.cadre._x+( _parent.cadre._width-MCtarget._width)/2;

MCtarget._y = _parent.cadre._y+(_parent.cadre._height-MCtarget._height)/2;

_parent.loadbar.gotoAndStop(1);

_parent.loadbar.percent = "";

};

//objet chargement

MCloader = new MovieClipLoader();

MCloader.addListener(Ec);

// appEL de l'XML

MCXML = new XML();

MCXML.load("photos.xml");

MCXML.ignoreWhite = true;

MCXML.onLoad = function(succes) {

function Pic_Desc(n, u) {

this.name = n;

this.url = u;

}

// je croie que c'est sur la ligne du dessus que ça
couille (excusez du langage) lorsqu'il defini l'image et sa légende à
partir de l'xml

if (succes) {

var i = 0;

while (this.firstChild.childNodes[i] != undefined) {

_root.PIC[i] = new Pic_Desc(this.firstChild.childNodes[i].attributes.nom, this.firstChild.childNodes[i].attributes.url);

i++;

}

_root.MAX = i;

}

};

//boutons appelant les images

B_next.onRelease = function() {

//chargement de l'image selectionnée

_root.INDICE++;

if (_root.INDICE == _root.MAX) {

_root.INDICE = 0;

}

_parent.MCloader.loadClip(_root.PIC[_root.INDICE].url, "_root.holder");

_parent.desc = _root.PIC[_root.INDICE].name;

};

B_previous.onRelease = function() {

//chargement de l'image selectionnée

_root.INDICE--;

if (_root.INDICE<0) {

_root.INDICE = _root.MAX-1;

}

_parent.MCloader.loadClip(_root.PIC[_root.INDICE].url, "_root.holder");

_parent.desc = _root.PIC[_root.INDICE].name;

};







et l'xml :



<?xml version='1.0' encoding='UTF-8' ?>

<root>





</root>

// sans commentaire, xml bateau





Bon j'ai aussi essayé de passer en dehors des variables, les _root en
_parent ou this afin d'éviter qu'il aille s'empêtrer dans le clip
principal mais alors ça ne marche plus... donc j'ai juste changé ceux
dont j'étais sûr!!!

Si quelqu'un connait la solution, c'est à dire ce qui empêche mon
script (positionné sur une clé) de lire mes images (car il lit les noms
des images) et si jamais j'ai fait des erreurs d'analyse (mes
commentaires en rouge) de me le signaler merci
d'avanceeeeeeeeeeeeeeeeeeeeeuh

1 réponse

cortoh Messages postés 1255 Date d'inscription dimanche 18 décembre 2005 Statut Membre Dernière intervention 2 décembre 2008
24 janv. 2006 à 02:33
remplace _parent par this._parent


Peace from Mars
to all human beings
0
Rejoignez-nous