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 :

bouton désactivé par le onPress du clip ou il se trouve


Sujet :

Flash

  1. #1
    Membre habitué
    Inscrit en
    Septembre 2005
    Messages
    146
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 146
    Points : 150
    Points
    150
    Par défaut bouton désactivé par le onPress du clip ou il se trouve
    bonjour.
    mon problème est simple.

    j'ai un bouton dans un clip.
    ce clip a des attribut onPress et onRelease.
    le bouton ne marche pas (meme pas le changement d'image lorsque le curseur vient dessus).
    j'ai essayé de remplacer le bouton par un clip mais ca fait pareil.

    Pour résumer :
    les attributs onPress/onRelease/onMouseOver/... d'un clip annulent tous les evenements des clips fils.

    vous pouvez tester facilement :
    créer un clip vide.
    definissez lui un des gestionnaires d'évenements
    (par exemple onPress = function() {} ... eh oui ca marche meme si ya rien dans la fonction !)

    et placez un bouton dans ce clip.
    testez ...

    ya t'il une méthode simple pour résoudre ce problème ?
    Best Web Design Software ever - http://tweakstyle.com

  2. #2
    Rédacteur

    Femme Profil pro
    Étudiant
    Inscrit en
    Août 2005
    Messages
    435
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 33
    Localisation : Allemagne

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2005
    Messages : 435
    Points : 1 354
    Points
    1 354
    Par défaut
    hum, c'est ce genre de truc qui rend flash amusant, faut se démerder pour trouver une solution autrement

    Moi on m'a toujours dit d'utiliser la prop trackasMenu = true, mais sans succés...

  3. #3
    Membre émérite
    Avatar de jean philippe
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    2 062
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 2 062
    Points : 2 313
    Points
    2 313
    Par défaut
    je comprends pas trop le problème ?
    avoir accés à un bouton dans un clip depend du ciblage non ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    leClip.btn.onRelease = function() {
    	trace(this._name);
    };

  4. #4
    Membre habitué
    Inscrit en
    Septembre 2005
    Messages
    146
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 146
    Points : 150
    Points
    150
    Par défaut
    ben en fait le probleme c'est quand il y a un gestionnaire d'évenement de défini pour le clip, alors les gestionnaire du bouton ne marche plus

    exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    leClip.btn.onRelease = function() {
    	trace(this._name);
    };
     
    leClip.onRelease = function() {
    	trace(this._name);
    };
    dans ce cas j'aimerai qu'il éxecute les 2 lorsqu'on clique sur le bouton or qu'il n'execute que celui la :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    leClip.onRelease = function() {
    	trace(this._name);
    };
    le plus incohérent c'est que ca n'annule pas que le onRelease du bouton mais tous ses gestionnaire d'évenement (dans l'exemple ci joint j'ai rajouté une image au bouton qui s'affiche lorsqu'on passe le curseur dessus et il ne l'affiche pas !)
    Fichiers attachés Fichiers attachés
    Best Web Design Software ever - http://tweakstyle.com

  5. #5
    Membre habitué Avatar de solarishp
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    123
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2006
    Messages : 123
    Points : 140
    Points
    140
    Par défaut
    Pour ma part j'ai pas ce problème étrange. J'utilise Flash MX 2004 PRO
    Respecter la charte du forum pour rappel ! Ici
    Vérifier l’orthographe de vos messages
    Il ne faut pas penser à l'objectif à atteindre, il faut seulement penser à avancer. C'est ainsi, à force d'avancer, qu'on atteint ou qu'on double ses objectifs sans même sans apercevoir.

  6. #6
    Membre habitué
    Inscrit en
    Septembre 2005
    Messages
    146
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 146
    Points : 150
    Points
    150
    Par défaut
    ouai bizarre que t'es pas le meme probleme.
    moi j'ai ce probleme que je compil l'anim en flash 7 ou en flash 8.

    t'as tester le test que j'ai filé a ma réponse ?
    il te trace bien "leClip" et "btn" quand tu clique sur le bouton ?
    le rond devient il bleu quand tu passe dessus ?
    Best Web Design Software ever - http://tweakstyle.com

  7. #7
    Membre habitué Avatar de solarishp
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    123
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2006
    Messages : 123
    Points : 140
    Points
    140
    Par défaut
    J'arrive pas à ouvrir ton fichier, mais j'ai suivi to raisonnement et j'ai pas de prob ! étrange encore une fois
    Respecter la charte du forum pour rappel ! Ici
    Vérifier l’orthographe de vos messages
    Il ne faut pas penser à l'objectif à atteindre, il faut seulement penser à avancer. C'est ainsi, à force d'avancer, qu'on atteint ou qu'on double ses objectifs sans même sans apercevoir.

  8. #8
    Membre expérimenté Avatar de Lorenzo77
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    1 472
    Détails du profil
    Informations personnelles :
    Âge : 52
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mai 2006
    Messages : 1 472
    Points : 1 537
    Points
    1 537
    Par défaut
    pas testé ton probleme car je trouve pas d'interet dans le onPress sur un clip et sur le onPress d'un bouton a l'intérieur ... je vois pas comment flash va savoir tout seul sur quoi tu veux cliquer ...

    maintenant si tu veux stocker plusieurs actions pour lememe evenement, c'est tout simple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    // définition de la 1ere action pour le onRollOver de XX
    XX.onRollOver = function(){
    	trace('onRollOver 1');
    }
     
    // Stockage de cette action 
    var fcEven1 = XX.onRollOver;
     
    // définition de la 2eme action pour le onRollOver de XX
    XX.onRollOver = function(){
    	fcEven1();
    	trace('onRollOver 2');
    }
    Le plus grand arbre est né d'une graine menue, une tour de neuf étages est partie d'une poignée de terre.
    Mon blog : http://web.codeur.free.fr

  9. #9
    Membre habitué
    Inscrit en
    Septembre 2005
    Messages
    146
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 146
    Points : 150
    Points
    150
    Par défaut
    ben en fait ce que je veux créer c'est une bande de boutons déplacable.
    il me faut donc un
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    bande.onPress = function() {
    bande.startDrag();
    }
    bande.onRelease = function() {
    bande.stopDrag();
    }
    ainsi que
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    this.onRelease = function() {
    // action du bouton
    }
    pour chaque bouton

    la seule solution que j'ai trouvée pour l'instant ca serait de tout mettre dans le bande.onRelease et de tester la position du curseur sur le clip pour savoir s'il est sur un bouton on non.
    Le problème est que le nombre de bouton est variable (dynamique) et leurs taille dépend de l'image qui leur est attribué.
    De plus chaque bouton à une 2eme image lorsque l'on passe le curseur dessus.
    Ce type de solution serait donc difficile à coder d'une part et d'autre part trés gourmande en ressource. En effet, à chaque voir que l'on passerai le curseur sur la bande, il ferais un for de longueur proportionnelle au nombre de boutons avec 4 test dedans. La même chose lors du clic.

    Ce n'est qu'une petite partie de l'animation, je ne peux pas me permettre d'utiliser toute la ressource processeur pour cette bande ...
    Best Web Design Software ever - http://tweakstyle.com

  10. #10
    Membre habitué
    Inscrit en
    Septembre 2005
    Messages
    146
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 146
    Points : 150
    Points
    150
    Par défaut
    j'ai trouvé la solution tout seul

    merci quand meme de votre aide !

    la voici :
    il suffit de mettre un bouton transparent derrière les boutons et de lui associer tous les évenement du clip parent.
    dans mon exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    btnFond.onPress = function() {
       _parent.startDrag();
    }
    btnFond.onPress = function() {
       _parent.stopDrag();
    }
    mais ca marche dans le cas général du problème.
    Best Web Design Software ever - http://tweakstyle.com

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

Discussions similaires

  1. selection de boutons radios par défaut
    Par boss_gama dans le forum ASP
    Réponses: 5
    Dernier message: 12/07/2006, 08h45
  2. [VB6] bouton desactiver par une procedure
    Par Spiritkiller dans le forum VB 6 et antérieur
    Réponses: 30
    Dernier message: 05/05/2006, 20h51
  3. [js]methode "alert", bouton annuler par defaut
    Par jeromejanson dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 21/09/2005, 11h35
  4. Réponses: 7
    Dernier message: 16/03/2004, 15h59

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