IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Flash Discussion :

[FLASH MX2004] import dynamique d'un bouton de la bibliothèque


Sujet :

Flash

  1. #1
    Membre régulier Avatar de morgiane
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    144
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 144
    Points : 90
    Points
    90
    Par défaut [FLASH MX2004] import dynamique d'un bouton de la bibliothèque
    Bonjour,

    Alors voilà : pour ma page de news je voudrais afficher dynamiquement dans l'ordre :
    - la date ;
    - la news ;
    - un bouton pour un lien web ;
    - un movieclip d'une barre.

    Pour la date et la news, pas de problèmes, c'est réussi (grâce aux nombreux conseils de ceux qui m'ont aidé ).
    J'ai construit mes news avec un fichier XML. J'ai construit un bouton "En savoir plus" qui permet d'ouvrir un site internet lorsque l'on clique dessus. Le lien à mettre sur le bouton est dans le fichier XML.

    Ce que je n'arrive pas à faire, c'est importer dynamiquement le bouton "lienWeb" de ma bibliothèque, le mettre à l'endroit que je veux et lui attribuer le "getURL" avec le lien. Je précise que ne sachant pas combien de news j'aurais, je créé les noms d'occurences en passant par une variable String. Je souhaite mettre aussi une barre (créée dans ma bibliothèque aussi, movieclip "ligne2") pour séparer les news entre elles.

    J'ai essayé plusieurs trucs que j'ai trouvé à droite à gauche (createEmptyMovieClip, createClassObject...), mais comme je comprend rien à ce que je fais , forcément, ça marche pas !! Quelqu'un pourrait-il m'aider ? Merci d'avance ! (J'espère avoir été assez clair !!!!)
    La plus grave maladie du cerveau, c'est de réfléchir.

  2. #2
    Membre régulier Avatar de morgiane
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    144
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 144
    Points : 90
    Points
    90
    Par défaut
    Bon, en fait j'ai réussi à tout afficher (bouton et barre) avec createMovieClip et attachMovie (ça me rassure un peu sur mes capacités de compréhension !!!) . Le seul problème que j'ai maintenant, c'st pour affecter le lien au bouton :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    //création du nom d'occurence du bouton
    		var occ_bout:String="boutWeb"+i;
    		var occ_clipb:String="clipb"+i;
    		chemin.createEmptyMovieClip(occ_clipb,prof);
    		prof++;
    		chemin[occ_clipb].attachMovie("lienWeb",occ_bout,prof);
    		//placement du bouton en bas à droite de la news
    		chemin[occ_clipb]._x=(x_case + larg_case)-chemin[occ_clipb]._width;
    		chemin[occ_clipb]._y=y_case;
    		chemin[occ_clipb].onPress=function(){
    			getURL(actu.firstChild.childNodes[i].attributes.lien,"_blank");
    		}
    Précision : "chemin" est une variable déclarée en premier = "this"

    Pourquoi ça marche pas ????
    La plus grave maladie du cerveau, c'est de réfléchir.

  3. #3
    Membre averti Avatar de titouille
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    353
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : Suisse

    Informations forums :
    Inscription : Juin 2005
    Messages : 353
    Points : 356
    Points
    356
    Par défaut
    fais des traces, ça aidera à trouver ou se situe le problème

    par exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    trace( actu.firstChild.childNodes[i].attributes.lien );
    te permettra de savoir ce que contient la variable lien.

    Bon courage, a++

  4. #4
    Expert éminent

    Avatar de freegreg
    Profil pro
    Inscrit en
    Août 2002
    Messages
    4 376
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Gard (Languedoc Roussillon)

    Informations forums :
    Inscription : Août 2002
    Messages : 4 376
    Points : 8 779
    Points
    8 779
    Par défaut
    Salut,

    il cherche actu dans chemin[occ_clipb].
    Je suppose qu'il doit être dans chemin, non ?
    Essaie chemin.actu... ou bien this._parent.actu...
    Avant toutes questions, consultez nos différentes ressources disponibles gratuitement : XML, Développement Web, Flash/Flex, (X)HTML, CSS, JavaScript, AJAX, ASP
    Offres d'emploi développeur Web

  5. #5
    Membre régulier Avatar de morgiane
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    144
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 144
    Points : 90
    Points
    90
    Par défaut
    Le souci, c'est que tout ça, ça se trouve dans "actu.onLoad = function()".

    En fait :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    trace("avant la fonction : " + actu.firstChild.childNodes[i].attributes.lien);
    		chemin[occ_clipb].onPress=function(){
    			trace("dans la fonction : "+ this._parent.actu.firstChild.childNodes[i].attributes.lien);
    			//getURL(actu.firstChild.childNodes[i].attributes.lien,"_blank");
    		}
    Le premier trace m'affiche ce qu'il faut, mais le 2e reste à "undefined"
    La plus grave maladie du cerveau, c'est de réfléchir.

  6. #6
    Membre éprouvé
    Avatar de thecaptain
    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Décembre 2003
    Messages
    919
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Architecte de système d'information

    Informations forums :
    Inscription : Décembre 2003
    Messages : 919
    Points : 1 210
    Points
    1 210
    Par défaut
    Salut,

    non cela vient du ciblage de la variable i Flash étant asynchrone, lorsque tu va clicker sur le bouton, ta variable i va être égal au total de la boucle, donc forcément invalide ! Tu as 2 solutions : soit stocker la variable id, soit stocker le lien (préférable je pense). Cela donne donc
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    //création du nom d'occurence du bouton
    		var occ_bout:String="boutWeb"+i;
    		var occ_clipb:String="clipb"+i;
    		chemin.createEmptyMovieClip(occ_clipb,prof);
    		prof++;
                    chemin[occ_clipb].attachMovie("lienWeb",occ_bout,prof);
    		//placement du bouton en bas à droite de la news
    		chemin[occ_clipb]._x=(x_case + larg_case)-chemin[occ_clipb]._width;
    		chemin[occ_clipb]._y=y_case;
                    chemin[occ_clipb].myURL = actu.firstChild.childNodes[i].attributes.lien;
    		chemin[occ_clipb].onPress=function(){
    			getURL(this.myURL,"_blank");
    		}
    A noter encore que toujours utilise chemin[occ_clipb] n'est pas une bonne idée, tu ferais mieux de stocker cela dans une variable de type MovieClip

    @++
    Libzippp (C++)
    Lost in AStorm

  7. #7
    Membre régulier Avatar de morgiane
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    144
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 144
    Points : 90
    Points
    90
    Par défaut
    Ca maaaaarche ! un grand à tous ! J'ai appris pleins de choses du coup !
    La plus grave maladie du cerveau, c'est de réfléchir.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [FLASH MX2004] Texte dynamique et alpha
    Par exe dans le forum Flash
    Réponses: 6
    Dernier message: 13/04/2005, 09h54
  2. [FLASH MX2004] Importer une dll
    Par Fry dans le forum Flash
    Réponses: 4
    Dernier message: 07/01/2005, 10h54
  3. [FLASH MX2004] Problème pour faire un bouton play
    Par melanie075 dans le forum Flash
    Réponses: 13
    Dernier message: 16/12/2004, 22h55
  4. [FLASH MX2004] Diaporama dynamique
    Par tougirl dans le forum Flash
    Réponses: 3
    Dernier message: 30/09/2004, 08h39
  5. [FLASH MX2004] Creation dynamique d'occurences
    Par WinBernardo dans le forum Flash
    Réponses: 2
    Dernier message: 21/08/2004, 17h05

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo