Prb diaporama

gonimus Messages postés 11 Date d'inscription jeudi 11 octobre 2007 Statut Membre Dernière intervention 14 novembre 2007 - 11 oct. 2007 à 20:04
gonimus Messages postés 11 Date d'inscription jeudi 11 octobre 2007 Statut Membre Dernière intervention 14 novembre 2007 - 15 oct. 2007 à 10:41
Je débute et je me suis lancé dans le diaporama de _benjy.
http://www.flashkod.com/tutorial.aspx?id=232

Je l'ai essayé mais je n'obtient aucun résultat, s'affichent juste les éléments que j'ai moi-même placé (la barre de chargement et l'écran)

J'ai donc parcourut tout le web a la recherche d'autre tuto flash pour des diaporamas, j'en ait trouvé quelque uns, mais sans réussir la aussi.

Bref j'en suis arrivé à la conclusion que le code est bon, mais qu'il y a quelque chose (probablement de trés simple) que je ne doit pas faire dans les règles.

ET QUELQUE PART CA ME TITILLE

Si vous pouviez m'accorder 30 secondes cela me serait grandement utile.

Voila l'affaire :

dans mon dossier :
testfla j'ai :
+test1.fla
+test1.swf
+test1.html
+images
++img1.jpg
++img2.jpg
++img3.jpg
++img4.jpg

Dans test1.fla, j'ai 3 calques :
AS (pas de graphique, juste le code)
barreChargement (pas de code, juste une barre horizontale)
Images (pas de code, juste un rectangle)

Quant au code :(entièrement dans un calque AS)
barreChargement._visible = false;

imageIndex= -1;
maxImages= 4;
// pour l'exemple, mais sinon mettre le nombre d'images dans le répertoire
function imageNext()
{
barreChargement._visible = true;
onEnterFrame= function()
{
//l'enterFrame un fonction executé tout letemps
var pc=Image.getBytesLoaded()*100/_root.getBytesTotal();
//calculedu % de l'image qui est chargé
barreChargement._xscale=pc;
// on change la taille de la barre de chargement
if (pc >= 100)
{
// et si tout estchargé
barreChargement._visible =false;
// on recache la barre dechargement
delete onEnterFrame; // onsuprimel'enterFrame;
// etonsupprime la fonction exécuté en permanace, histoire de pas surgargerleprocesseur pour rien ...
}
}
imageIndex++;
if (imageIndex>maxImages)
{
imageIndex = 0;
}
Image.loadMovie("images/img"+imageIndex+".jpg");
}

function imagePrev()
{
onEnterFrame = function()
{
var pc = Image.getBytesLoaded()*100/_root.getBytesTotal();
if (pc == 100)
{
delete onEnterFrame;
}
}
imageIndex--;
if (imageIndex <= -1)
{
imageIndex = maxImages;
}
Image.loadMovie("images/img"+imageIndex+".jpg");
}

9 réponses

gonimus Messages postés 11 Date d'inscription jeudi 11 octobre 2007 Statut Membre Dernière intervention 14 novembre 2007
11 oct. 2007 à 20:08
C'est un vrai bordel ce post, comment l'éditer et marquer la casse ?
0
The_Guardian Messages postés 317 Date d'inscription vendredi 25 mai 2007 Statut Membre Dernière intervention 19 octobre 2007 1
12 oct. 2007 à 08:57
Bonjour, 

Juste une question que je me pose, dans ce code : Image.loadMovie("images/img"+imageIndex+".jpg");  ca suppose que tu charge depuis une adress tes images depuis un sous répertoire, ou sous sous.. ?
 

 

Une autruche ne se cuit pas aux petits lardons
0
The_Guardian Messages postés 317 Date d'inscription vendredi 25 mai 2007 Statut Membre Dernière intervention 19 octobre 2007 1
12 oct. 2007 à 09:18
RE

et pourquoi tu te simplifies pas la vie en ajoutant une espece de function télécommande avec ce gestionnaire d'évenements onEnterFrame ?onEnterFrame function() { telecommande.barre._xscale (ecran.getBytesLoaded() /ecran.getBytesTotal())*100;

et tu es sur que cette function est juste ?  //l'enterFrame un fonction executé tout letemps var pc=Image.getBytesLoaded()*100/_root.getBytesTotal();
Au mieux regarde le taux du téléchargement et choisis dans affichage/param de telechargement un taux..
Fin jessaie de comprendre le code, et cest un patè aussi... :p

Une autruche ne se cuit pas aux petits lardons
0
_benjy Messages postés 1575 Date d'inscription vendredi 23 avril 2004 Statut Membre Dernière intervention 21 février 2011 2
12 oct. 2007 à 10:28
Salut

Oups, je viens de voir qu'en fait il y a une coquille sur mon code, je viens de le notifier sur le tuto

Dans le fonction "imageNext" & "imagePrev", le control du chargement (calcul de pc) est erroné :
var pc=Image.getBytesLoaded()*100/_root.getBytesTotal();
en effet c'est la au poid total de l'anim que l'on souhaite compare le poid de l'image en cours de chargement, donc :
var pc=Image.getBytesLoaded()*100/Image.getBytesTotal();






Flash sans Limites


_Benjy
  chez kOlapsis
 
0

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

Posez votre question
gonimus Messages postés 11 Date d'inscription jeudi 11 octobre 2007 Statut Membre Dernière intervention 14 novembre 2007
12 oct. 2007 à 11:46
merci à The_Guardian et _benjy
j'ai modifier le code en conséquence mais rien n'y fait.

avec :
Image.loadMovie("images/img"+imageIndex+".jpg");
j'appele bien mes imgX dans une ossier images situé au même niveau que le .fla et .swf

Dit moi _benjy, si tu fais un copier/coller du code au dessus (version corrigé) avec quatre images dans un fichier : ca tourne ?
0
_benjy Messages postés 1575 Date d'inscription vendredi 23 avril 2004 Statut Membre Dernière intervention 21 février 2011 2
12 oct. 2007 à 15:13
Salut

ben le dernier truc que je vois que t'aurais plus oublier c'est de nommé l'occurence de clip dans lequel tu charges les images ... qui doit s'appeler "Image" en restpectant la case.
et si t'as 4 images et que tu as bien maxImage=4 alors pas de prob
allé ++



Flash sans Limites


_Benjy
  chez kOlapsis
 
0
gonimus Messages postés 11 Date d'inscription jeudi 11 octobre 2007 Statut Membre Dernière intervention 14 novembre 2007
12 oct. 2007 à 19:26
Re-salut

Pour l'occurence de clip voila ce que j'ai :
je fais : insertion nouveau symbole / clip. Je le nomme Image
et je dessine un rectangle.
Ensuite je prend ce rectangle dela bibliothèque et je le depose sur ma sequence1

C'est y bon comme ca ?
Merci
Gonim's
0
_benjy Messages postés 1575 Date d'inscription vendredi 23 avril 2004 Statut Membre Dernière intervention 21 février 2011 2
15 oct. 2007 à 09:35
Salut

Ben une fois que tu l'as déposé sur la scène (où en fait tu dépose une occurence du clip de la bibliothèque), il faut lui donner un nom a cette occurence.
Si tu la sélectionnes (sélectionner pas éditer, donc juste un simple clique dessus :)), dans le panneau propriétés, tu as un premier champ nommé "nom d'occurence" et c'est là qu'il faut l'appeler "Image".
Car c'est l'occurence que tu travail via actionscript, et nom le symbole de la bibliothèque (tu peux déposer plusieur fois le mm symbole sur la scene, avec des noms d'occurences différents, et tu peux alors le manipuler indépendament les uns des autres).
A mon avis, si tu n'es déjà pas au point sur ces principes là, tu devrais p'être trouver des tuto ou cours d'initiation à Flash, car c'est la base et si t'es pas allaise avec ca, tu vas pas t'en sortir...
Bon courage quand mm
++



Flash sans Limites


_Benjy
  chez kOlapsis
 
0
gonimus Messages postés 11 Date d'inscription jeudi 11 octobre 2007 Statut Membre Dernière intervention 14 novembre 2007
15 oct. 2007 à 10:41
Salut _benjy,

Je détallai juste pour être sur que le problème ne vienne pas d'une erreure énorme. Mais d'après ce que tu me décrit je n'ai pas l'impression d'être hors jeu. Du coup je reste bloqué et le mystère entier.

Arghh, les dieux du flash seraient'ils contre moi ?
gonim's
0
Rejoignez-nous