Problème Scrollbar, Xml et container

djichtus Messages postés 72 Date d'inscription lundi 5 avril 2004 Statut Membre Dernière intervention 24 juin 2015 - 3 févr. 2011 à 14:04
djichtus Messages postés 72 Date d'inscription lundi 5 avril 2004 Statut Membre Dernière intervention 24 juin 2015 - 4 févr. 2011 à 10:23
Bonjour à tous,

je développe une carte de france interactive pour un client.
Je fais appel à un fichier XML qui répertorie les données et que je charge dynamiquement dans un container.
Mon container "Region" contient plusieurs blocs de "magasin". Et pour gérer ceux-ci, je souhaiterai intégrer une scrollbar qui logiquement doit se trouver dans le container pour scroller les blocs.

Voici mon code :
function listStores(regionId,region_nom) {
        
        ///////////////////////
        // Chargement du XML //
        ///////////////////////
        var monXML:XML = new XML();
        monXML.ignoreWhite = true;
        monXML.load("stores.xml");
        monXML.onLoad = function(correcte){
                if (correcte) {
                        x = monXML.firstChild;
                        var arrayRegionStores = new Array();
                        var j=0;
                        for(i = 0; x.childNodes[i] != undefined; i++) {
                                if (x.childNodes[i].attributes.Region_Id == regionId) {
                                        arrayRegionStores[j] = x.childNodes[i];
                                        j++;
                                }
                        }
                        var blockY = 60;
                        _root.container_magasin_mc_current.removeMovieClip();
                        container = _root.attachMovie("container_magasin_mc", "container_magasin_mc_current" , this.getNextHighestDepth(), {_x:180,_y:10});
                        
                        //REGION
                        region = container.attachMovie("region", "region_current", container.getNextHighestDepth(),
                                                                        {_x:20,_y:10});
                        region.region_txt.text = region_nom;
                        
                        for(i=0;arrayRegionStores[i] != undefined; i++) {
                                writeStore(container,arrayRegionStores[i],i+1, blockY);
                                
                                blockY = blockY + 200;
                        }
                } else { Voir_xml = "Erreur lors du chargement du fichier XML";
                }
        };
}


///////////////////////////////////////
// Création des champs txt dynamique //
///////////////////////////////////////
function writeStore(container, xmlStore, index, blockY) {
        
        blockStore = container.attachMovie("champ_txt_mc", "champ_txt" + index , container.getNextHighestDepth(),
                                                                        {_x:0,_y:blockY}); //MC conteneur des champs du magasin
                nom = this.blockStore.attachMovie("nom", "nom" + index, this.blockStore.getNextHighestDepth(),
                                                                        {_x:10,_y:10});
        this.nom.nom_txt.text = xmlStore.childNodes[0].firstChild;
                adresse = this.blockStore.attachMovie("adresse", "adresse" + index, this.blockStore.getNextHighestDepth(),
                                                                        {_x:10,_y:40});
        this.adresse.adresse_txt.text = xmlStore.childNodes[1].firstChild;
        cp_ville = this.blockStore.attachMovie("cp_ville", "cp_ville" + index, this.blockStore.getNextHighestDepth(),
                                                                        {_x:10,_y:60});
        this.cp_ville.cp_ville_txt.text = xmlStore.childNodes[2].firstChild + " " + xmlStore.childNodes[3].firstChild;
        telephone = this.blockStore.attachMovie("telephone", "telephone" + index, this.blockStore.getNextHighestDepth(),
                                                                        {_x:10,_y:85});
        this.telephone.telephone_txt.text = xmlStore.childNodes[4].firstChild;
        fax = this.blockStore.attachMovie("fax", "fax" + index, this.blockStore.getNextHighestDepth(),
                                                                        {_x:10,_y:100});
        this.fax.fax_txt.text = xmlStore.childNodes[5].firstChild;
        horaire = this.blockStore.attachMovie("horaire", "horaire" + index, this.blockStore.getNextHighestDepth(),
                                                                        {_x:10,_y:120});
        this.horaire.horaire_txt.text = xmlStore.childNodes[6].firstChild;


J'ai beau avoir essayé plusieurs recherche, je bloque, je ne comprend pas comment lier une scrollbar à un container dynamique. Vous pouvez voir si vous cliquer sur la région Rhône-Alpes les blocs qui se duplique et qui vont sortir de mon container, quelle est la méthode à adopter ?
Merci pour votre aide.

1 réponse

djichtus Messages postés 72 Date d'inscription lundi 5 avril 2004 Statut Membre Dernière intervention 24 juin 2015
4 févr. 2011 à 10:23
Re-bonjour,

sans nouvelle je vous joins les fichiers de la conception de la carte.
Personne ne peux m'aiguiller? Suis-je peut-être dans le mauvais forum ?
Merci d'avance

Dav
0
Rejoignez-nous