Forums Développement Multimédia

Aller au contenu

[résolu] getChildByName et mouseEnabled

CODE as3

3 réponses à ce sujet

#1 guu-ji

    Ceinture Jaune

  • Members
  • PipPip
  • 25 messages

Posté 19 March 2014 - 19:37 PM

Bonjour !

Un petit soucis de compréhension pour récupérer (ou jouer) avec la propriété MouseEnabled sur de MC crées dynamiquement.

Mes boutons sont crées comme ceci au sein d'une boucle :

var bt:MovieClip = new MovieClip();
bt.name="c"+variable+"_bt"+variable;
 

Dans une autre boucle je veux les repositionner et mettre la propriété mouseEnabled à false;
J'ai donc tenté :

kont.getChildByName("c1_bt"+i).mouseEnabled=false;
 
Pour le repositionnement, pas de soucis, pour le mouseEnabled cela générait une erreur :
Accès à la propriété mouseEnabled peut-être non définie, via la référence de type static flash.display:DisplayObject.

J'ai donc tenté :

var mcCible:MovieClip=kont.getChildByName("c1_bt"+i) as MovieClip;
mcCible.mouseEnabled=false;
 
Cela ne génère plus d'erreur mais cela ne désactive pas mes boutons. Ce qui est dingue, c'est que sur ma fonction de clic, je fais un trace(pEvt.currentTarget.mouseEnabled); et il me renvoit bien false...

J'ai raté un truc ?
Merci à ceux qui m'apporteront la lumière !!!

#2 pol2095

  • Members
  • PipPipPipPipPipPipPipPip
  • 1784 messages

Posté 19 March 2014 - 21:09 PM

mcCible.mouseEnabled=mcCible.mouseChildren=false;

#3 Benzouye

  • Members
  • PipPipPipPipPipPipPipPip
  • 583 messages

Posté 20 March 2014 - 09:30 AM

Bonjour,

Juste pour compléter la solution de pol2095, regardes la doc Adobe sur MouseEnabled. Ton cas est d'ailleurs expliqué.
[détails de geek]Tu n'es pas obligé de typer en MovieClip si tu ne fais que cela, IntercativeObject suffirait[/détails de geek]
Benzouye
Travaille avec FlashDevelop 4 + Flex SDK 4.6 open source

#4 guu-ji

    Ceinture Jaune

  • Members
  • PipPip
  • 25 messages

Posté 20 March 2014 - 13:29 PM

Merci beaucoup à vous deux !
mouseChildren ... ok, j'avais raté cette propriété (+ habitué à l'AS2 en fait ...)

merci merci !!!

J'avais fais des essais avec IntercativeObject mais ça n'avait pas été concluant... je pense que l'absence de déclaration mouseChildren devait y être pour quelque chose !!!

Merci beaucoup !



1 utilisateur(s) li(sen)t ce sujet

0 membre(s), 1 invité(s), 0 utilisateur(s) anonyme(s)

authorised training centre

Centre de Formation Mediabox - Adobe et Apple Authorised Training Center.

Déclaré auprès de la Direction du Travail et de la Formation Professionnelle

Mediabox : SARL au capital de 62.000€ - Numéro d'activité : 11 75 44555 75 - SIRET : 49371646800035

MEDIABOX, 23, rue de Bruxelles, 75009 PARIS

FFP