Problème d'affichage ... o_O

sebct Messages postés 20 Date d'inscription mardi 7 juin 2005 Statut Membre Dernière intervention 26 juillet 2005 - 18 juil. 2005 à 10:59
sebct Messages postés 20 Date d'inscription mardi 7 juin 2005 Statut Membre Dernière intervention 26 juillet 2005 - 20 juil. 2005 à 10:03
Bonjour,

sur mon album de photos, je souhaite afficher des descriptifs pour chacune des photos, classées par catégories puis par critères.

J'ai donc une fontion qui doit dupliquer des clips dont les variables qui sont affichées proviennent d'un fichier php (--> utilisation de loadVariablesNum).

Cependant, si le chargement de données ne pose aucun problème, c'est l'affichage des clips dupliqués qui semble en cause.

Voici le code de mon fla :
-----------------------------------------

stop();
fin = false;
loadVariablesNum("photos.php?page="+numPageGauche, 0);

chargement = new loadVars();
// fonction qui génère les photos de gauche et de droite en fonction du nbphotosPage
chargement.onLoad = function() {
// pour supprimer les clips dupliqués précédemment
for (var i = 1; i <= 4; i++)
{
removeMovieClip("photo_id_gauche_"+i);
removeMovieClip("photo_id_droite_"+i);
}
// affichage sur la gauche
for (var i = 1; i <= nbphotosPage_gauche; i++) {
var newClip = _root.photo_id_gauche_0.duplicateMovieClip("photo_id_gauche_"+i, i+zindex);
newClip._y = _root.photo_id_gauche_0._y+((110*i)+70);
set("photo_id_gauche_"+i add ":photo_id_gauche_", eval("photo_id_gauche_" add i));
set("photo_id_gauche_"+i add ":des_gauche_", eval("des_gauche_" add i));
zindex = zindex + 4;
}
// affichage sur la droite
for (var j = 1; j <= nbphotosPage_droite; j++) {
var newClip = _root.photo_id_droite_0.duplicateMovieClip("photo_id_droite_"+j, 5000+j+zindex);
newClip._y = _root.photo_id_droite_0._y+((110*j)+70);
set("photo_id_droite_"+j add ":photo_id_droite_", eval("photo_id_droite_" add j));
set("photo_id_droite_"+j add ":des_droite_", eval("des_droite_" add j));
zindex = zindex + 4;
}
};
this.lire = function() {
chargement.load("photos.php?page="+numPageGauche);
}

this.lire();
-----------------------------------------


Voici le code pour aller à la page suivante :
-----------------------------------------

numPageGauche = numPageGauche+2;
numPageDroite = numPageDroite+2;
zindex = zindex + 10;
nomCatGauche = "";
nomCritGauche = "";
nomCatDroite = "";
nomCritDroite = "";
for (var i = 1; i <= 4; i++)
{
removeMovieClip("photo_id_gauche_"+i);
removeMovieClip("photo_id_droite_"+i);
}
loadVariablesNum("photos.php?page="+numPageGauche, 0);
_root.lire();
}
-----------------------------------------


Et pour la page précédente :
-----------------------------------------

on (release) {
fin = false;
zindex = zindex + 10;
numPageGauche = numPageGauche-2;
numPageDroite = numPageDroite-2;
nomCatGauche = "";
nomCritGauche = "";
nomCatDroite = "";
nomCritDroite = "";
for (var i = 1; i <= 4; i++)
{
removeMovieClip("photo_id_gauche_"+i);
removeMovieClip("photo_id_droite_"+i);
}
loadVariablesNum("photos.php?page="+numPageGauche, 0);
_root.lire();
}
-----------------------------------------



En fait j'ai l'impression que les clips s'affichent parfois avant que tout ne soit chargé. Je m'explique : en première page, tout s'affiche normalement. Après, pour la page suivante, il arrive que les clips qui s'affichent soient les mêmes que ceux de la page vue précédemment, et pourtant les données qui sont chargées sont les bonnes (je le vois aux catégories et critères qui correspondent).

D'où vient le problème ? Est-ce qu'il faudrait indiquer que l'affichage ne se fasse qu'après que tout (les clips dupliqués) soit parfaitement chargé ?
Comment puis-je faire ?


Merci pour votre aide. Désolé, le code est peut-être 'sale', mais j'ai un niveau débutant en flash :(

1 réponse

sebct Messages postés 20 Date d'inscription mardi 7 juin 2005 Statut Membre Dernière intervention 26 juillet 2005
20 juil. 2005 à 10:03
Le problème vient en fait du fait (...) que comme toute l'action se passe sur une seule et même image, les clips ne se déchargent pas et en appuyant sur le bouton droite ou gauche, ils sont toujours chargés et parfois sont affichés à la place des nouveaux. Notamment, lorsqu'on arrive à la fin de l'album, les clips doivent s'afficher uniquement à gauche et laisser la page de droite blanche, mais ce sont les clips affichés avant qui apparaissent.

Quelqu'un aurait une solution svp ?

Merci.
0