OnClipEvent(load)

Signaler
Messages postés
2378
Date d'inscription
lundi 4 février 2002
Statut
Membre
Dernière intervention
29 décembre 2012
-
Messages postés
1511
Date d'inscription
samedi 8 décembre 2001
Statut
Modérateur
Dernière intervention
11 juin 2009
-
Bonjour,
Dans mon calque attaché à mon Clip j'ai le code suivant:

onClipEvent(load){
_root.nText = 'Toto';
TestZone.text = 'Test';
}

Pour nText po de problème mais pour TestZone.text rien du tout !! Et si je mets TestZone.text = 'Test'; dans l'action de mon calque aucun problème, donc ma Case est bien reconnue !!
Vous pourriez m'aider sur ce coup ??
Merci.
S.

5 réponses

Messages postés
1511
Date d'inscription
samedi 8 décembre 2001
Statut
Modérateur
Dernière intervention
11 juin 2009

Salut,

C'est pas _root.TestZone.test ='test'; plutot? Parce que sinon, il a tendance à chercher en lui-meme un clip qui s'appelle TestZone.

@+ Tom
Messages postés
6
Date d'inscription
samedi 8 mars 2003
Statut
Membre
Dernière intervention
24 mars 2003

NO WAR NO WAR
Pour éviter ce genre de problème il est conseillé d'utiliser systématiquerment la syntaxe pointée de Flash en relatif.
Pour ce référer au clip dans lequel se trouve l'action : this.monMovie

Pour ce référer au root:
_parent.
exemple
onClipEvent(load){
> > _parent.nText = 'Toto';
> > this.TestZone.text = 'Test';
> > }
Lorsqu'on utilise ce genre de gestionnaire d'évenement, on a tendance à croire que this fait référence au scénario dans lequel est placé le clip. En fait, this fait référence au scénario à l'intérieur du clip.
En prenant cette habitude, vous pourrez communiquerpar exemple des variables entre des fichiers swf chargés avec du loadMovie.
NO WAR NO WAR
Messages postés
1511
Date d'inscription
samedi 8 décembre 2001
Statut
Modérateur
Dernière intervention
11 juin 2009

Désolé de te dire ca jeromem (NO WAR moi aussi!), mais pour moi, si t'es pas capable de tout pointer en absolu, ca veut dire que tu ne controles pas la hierarchie de tes clips.

Donc je ne suis carrément pas d'accord avec toi.

Le relatif, ca n'est utile que pour le this.
Si tu utilises le _parent, ca veut dire que tu ne sais pas ce qui contient ton code...

@+ Tom
Messages postés
6
Date d'inscription
samedi 8 mars 2003
Statut
Membre
Dernière intervention
24 mars 2003

NO WAR NO WAR
Bonjour Tom.
Le fait de ne pas pointer en absolu n'est pas une question pour moi de capacité.
C'est une question de choix.
Avant je mettais tout en relatif.
Mais ca me posait probleme pour faire évoluer mes swf (car c'est vrai je ne prévois pas toujours tout à l'avance, j'ai parfois besoin de rajouter des choses qui n'étaient pas prévues)
Pourquoi ne saurais je pas ce que contient mon code en utilisant _parent ?
Et pourquoi donc en relatif, je ne pourrais pas controler la hierarchie de mes clips ?
Je ne comprends pas trop tes objections.
J'ai pris l'habitude de n'utiliser que le relatif depuis Flash5 suite à la lecture du bouquin de Moock (Action script La reference) qui conseille cette facon de faire.
Point de vue partagé également par R.Penner dans son ouvrage( Programmation Flash Mx).
Mais si tu m'explique avec un exemple concret pourquoi le relatif est déconseillé, je pourrais comprendre ton point de vue et avancer dans la connaissance de Flash.
@te lire

Jeromem

NO WAR NO WAR
Messages postés
1511
Date d'inscription
samedi 8 décembre 2001
Statut
Modérateur
Dernière intervention
11 juin 2009

Alors, lien relatif ou absolu?

L'avantage des liens relatifs, c'est que une fois que tu as fini ton application, tu peux l'importer dans un autre flash à n'importe quel niveau de l'animation, sans avoir à modifier une ligne de programmation, c'est la que tu as raison. Le désavantage, c'est pour les fonctions automatisées, les modeles, ect... Des que tu utilises les fonctions attachmovie(), createEmptyMovieClip(), ou autres, ca n'a plus rien a voir avec le relatif puisque tout se crée par rapport à la scene: on se sert de tableaux de liens absolus.
Je n'aime vraiment pas les liens relatifs, car je les trouve approximatifs: si tu as la moindre modif au niveau des clips dans les clips, ca devient le bordel.
Ce matin, j'etais de mauvaise humeur, mes phrases etaient un peu seches (en fait quand je me relis, j'ai été carrément agressif), désolé...
Je garde des réflexes 'old school' (j'ai commencé par l'assembleur, puis le C++, maintenant, je fais mumuse avec l'actionscript): tout déclarer, tout controler, tout prévoir...
Les liens absolus evitent les erreurs de pointage de clip.
Evidemment, ca va dépendre de ta façon de faire, ou de t'organiser...
Lorsque je prevois d'intégrer des anims dans d'autres anims, je commence toujours par un script dans la premiere image de mon anim:
RACINE = new Object();
RACINE = this;
De cette facon, RACINE devient le chemin absolu pour le code de mon anim, je me passe completement des pointages relatifs... C'est ma facon de faire, surtout que j'ai tendance de plus en plus à passer par de la création par actionscript, sans clip sur la scene, donc sans chemin relatif.

http://w1.910.telia.com/~u91024173/
Travail uniquement avec des attachMovies et des createEmptyClip...

@+ tom