begin process at 2012 05 27 17:14:12
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Flash / Flash MX

 > 

Scripts

 > 

ActionScript

 > 

Problème de logique mathématique dans mon script


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Problème de logique mathématique dans mon script

jeudi 24 mai 2007 à 10:13:33 | Problème de logique mathématique dans mon script

way2web

Bonjour,

Moi et les maths on fait 2 ;)
Ca fait quelques heures que je galère sur ce script, je vous explique :

j'ai une galerie photo miniatures avec un bouton de navigation de part et d'autre (next et back) qui montrent respectivement chaque fois les 4 images précédentes ou suivantes, les boutons déclenchent ma fonction showThumbails en lui transmettant une variable index de 4 ou -4 en fonction du sens de navigation.

bouton back
[CODE]
on (release)
{
    showThumbails(-4,_root.theyear);
}
[/CODE]

et
bouton next

[CODE]
on(release)
{
   showThumbails(4,_root.theyear);
}
[/CODE]

la valeur _root.theyear me permettant de me répérer dans les différentes galeries

voici ma fonction :

[CODE]

var index:Number = 0;
var nombre:Number = 0;

function showThumbails(index,year:String):Void {
    _root.theyear = year;
    var MovieDepthCounter:Number = 10;
    var photoHolder:MovieClip;
    var xPos:Number;
    var yPos:Number = 20;
    var photoThumb:String;
    nombre+= index;
    trace(nombre);    
    
    for (var i:Number = 0; i<RootNode.childNodes.length; i++)
    {
        
        if (RootNode.childNodes[i].attributes.year == year)
        {
            var CategoryXML:XMLNode = RootNode.childNodes[i];
            TotalPhotos = CategoryXML.childNodes.length;
            trace(year+" has "+TotalPhotos+" photos");
            
                if (((nombre+4)/4) >= Math.ceil(TotalPhotos/4))
                {
                    //pr empêcher d'aller en avant qd on est à la dernière photo
                    Next_btn.enabled = false;
                    nombre=0;
                                        
                }
                
                else
                {
                    Next_btn.enabled = true;
                }
                
                if (nombre == 0)
                {
                    //pr empêcher d'aller en arrière qd on est à la première photo
                    Previous_btn.enabled = false;
                    Next_btn.enabled = true;
                }
                else
                {
                    Previous_btn.enabled = true;
                }
            
            
    
            for (var j:Number = 0; j<4; j++) {
                photoThumb = CategoryXML.childNodes[j+nombre].childNodes[1].firstChild.nodeValue;
                //photoThumb = "http://www.webdesign-4u.be/web-4u/images/portfolio/pictures/2003/botybenelux.jpg";
                //trace(photoThumb);
                photoHolder = this.createEmptyMovieClip("photoHolder"+j, MovieDepthCounter);
                //trace(photoHolder);
                xPos = 30+65*j;
                photoHolder._x = xPos;
                photoHolder._y = yPos;
                var photoHolderLoader:MovieClipLoader = new MovieClipLoader();
                photoHolderLoader.loadClip(photoThumb, photoHolder);
                MovieDepthCounter++;
            }
        }
    }
    //fin du for
}
//fin de la fonction showThumbails
[/CODE]


dans ma galerie 1 j'ai 23 images, dans la 2ème 17, dans la 3ème 15 et dans la dernière 4. J'ai réussi à regler le bouton back correctement de manière à ce qu'il ne soit pas possible d'aller en arrière quand on est à la première photo.
Maintenant j'aimerais limiter le bouton nexquand on est sur la dernière photo et quand on clique sur une autre année la variable nombre doit être reinitialisée pour que la navigation démarre bien à la première image de la galerie correspondante !  J'ai tenté tout ça dans les if mais je n'arrive pas à trouver la formule mathématique qui me permet de bloquer le bouton next quelque soit le nombre d'images dans la galerie !


Merci d'avance  pour votre aide !!
jeudi 24 mai 2007 à 14:47:28 | Re : Problème de logique mathématique dans mon script

goldenboy68

Que dirais-tu de remplacer ça:
if (((nombre+4)/4) >= Math.ceil(TotalPhotos/4))

par:
if (nombre > (TotalPhotos-4)){
    //Bouton next enabled=false;
}

@+! Samy
jeudi 24 mai 2007 à 15:12:03 | Re : Problème de logique mathématique dans mon script

way2web

J'ai essayé ça empêche d'afficher les dernières photos ex :
sur ma galerie comportant 23 photos on va jusqu'à la vingtième et puis on se retrouve à la première !

sur celle qui en comporte que 5 on ne voit que les 4 premières et on ne sait pas voir la dernière !
jeudi 24 mai 2007 à 15:25:46 | Re : Problème de logique mathématique dans mon script

goldenboy68

j'avais pas vu que nombre était initialisé à 0...à ce moment là, il faut tester (nombre+1) > (TotalPhotos-4)


Cette discussion est classée dans : nombre, var, number, next, photoholder


Répondre à ce message

Sujets en rapport avec ce message

LocalConnect pas très bien compris [ par way2web ] Bonsoir,J'ai créé deux fichiers swf différents insérés dans la même page html :1) le premier est une galerie de miniatures2) le deuxième est les photo Appliquer simultanément deux filtres en as [ par way2web ] Bonjour,j'ai créé un movieclip de manière dynamique sur lequel j'ai placé un listener, ensuite au onLoadInit, j'ai appliqué un filtre dropshadow et ma Gallerie Flash [ par theneoshaman ] Bonjours amis Flasheurs !Je suis en train de créer une gallerie dynamique en flash (mon dieu, que c'est original !) et j'ai un pb (sans déconner :p).. Problem de variable qui renvoi un NaN" dans un SlideShow [ par theneoshaman ] Amis Flasheurs...  Bonjours !Je suis en train de créer une petit flash où des images défilent mais ma première image ne revient pas derrière la derniè diaporama avec importation aléatoire [ par JackNUMBER ] bonjour à tous !!j'ai trouvé 2 scripts que j'aimerai combiné.L'un sert à charger une image aléatoirement dans un MovieClip (qu'il créé) qui est conten Classes et attribut statique [ par LunaticSky ] salut j'essaie de faire un jeu du memory en utilisant les classes ( je cherche le meilleur moyen) et j'ai un petit souci:    dynamic class Card {    p Pk mon preloader ne fonctionne pas ?? [ par way2web ] Bonjour,J'ai voulu rajouter un preloader au chargement des images de ma galerie photo, j'ai donc placé ce code[code]eloader.onLoadProgress = function( loadMovie (); et XML [ par Orange73 ] Yop les gens !Bon voilà, j'ai une anim principal dans laquelle je fais appel à un swf externe qui contient un AS permettant de faire un diaporama imag Problème Lecture de musique action script [ par WaNoU ThE EpSyLoN ] Bonjour,Je viens d'essayer de faire mon propre lecteur de musique flash. Vous vous en doutez surement mais j'ai un gros problème. En effet, lorsque je generer un movie clip à partir de plusieurs jpg [ par fixeurman ] Bonjour , comment faire pour générer un mc à partir d' une liste de noms d'images ? (elles font toutes moins de 10ko) dois-je faire une boucle avec u


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,733 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales