2 écouteurs "onKeyPress" sur la touche "Entrée" faisable?

[Résolu]
Signaler
Messages postés
1596
Date d'inscription
samedi 3 janvier 2004
Statut
Membre
Dernière intervention
9 juin 2011
-
Messages postés
1596
Date d'inscription
samedi 3 janvier 2004
Statut
Membre
Dernière intervention
9 juin 2011
-
Hello TLM,



J'ai une p'tite question...



J'ai 2 champs pour s'enregistrer (nom+mdp) et un bouton valider. J'ai
donc mis un onKeyPress dans un "onEnterFrame". Jusque-là tout va bien.



Le problème c'est que ces champs sont toujours visibles, et j'ai une
page "Inscription" qui peut s'afficher en même temps dans la même anim
avec d'autres champs (nom+mdp+...) et un autre bouton "Valider".
J'aurais aimé avoir un autre "onKeyPress" pour la validation de ce
formulaire...mais comment faire?



J'ai bien essayé de mettre le "onEnterFrame" ailleurs que sur le
"_root" pour séparer les 2 (ex: _root.inscription.onEnterFrame et
_root.enregistrement.onEnterFrame) mais quand je remplis les champs
dans "Inscription" et que j'appuis sur "Entrée", c'est le premier
déclaré qui est interprété.



J'ai aussi essayé de récupérer le nom du champ ayant le focus, mais
j'ai pas trouvé de propriété pour ça (on peut donner le focus, mais pas
le récupérer à priori)



Si vous avez une idée...



Thanks! @+! Samy

5 réponses

Messages postés
6146
Date d'inscription
dimanche 21 décembre 2003
Statut
Modérateur
Dernière intervention
4 septembre 2013
10
et pourquoi tu mets ton onKeyPress dans un Enterframe ?

Peg'
Messages postés
1596
Date d'inscription
samedi 3 janvier 2004
Statut
Membre
Dernière intervention
9 juin 2011
2
Voilà la solution:



this.createEmptyMovieClip("_keylistener",1);

Key.addListener(_keylistener);



_keylistener.onKeyDown=function(){

if(Selection.getFocus().substring(0,13)=="_level0.form1"){

_root.test1.text="appui dans formulaire 1";

}else if(Selection.getFocus().substring(0,13)=="_level0.form2"){

_root.test2.text="appui dans formulaire 2";

}

}



...ça peut toujours servir!



@+! Samy
Messages postés
1596
Date d'inscription
samedi 3 janvier 2004
Statut
Membre
Dernière intervention
9 juin 2011
2
bonne question et ça va libérer de la mémoire ça!



...mais ça change le problème? J'aurai toujours 2 écouteurs sur
"Entrée" et le code en prendra un en priorité...comment faire
correspondre un écouteur avec 1 formulaire?



Merci déjà pour l'info!



@+!
Messages postés
1596
Date d'inscription
samedi 3 janvier 2004
Statut
Membre
Dernière intervention
9 juin 2011
2
Non, voilà, je sais pourquoi c'est dans un onEnterFrame, c'est parce que j'ai utilisé:



this.onEnterFrame=function(){

if (Key.isDown(Key.ENTER)){

...

}

}
Messages postés
1596
Date d'inscription
samedi 3 janvier 2004
Statut
Membre
Dernière intervention
9 juin 2011
2
Une p'tite anim de test pour vous montrer le problème:

http://www.go-dek.com/testImage/keypress.swf



le focus dans un des formulaires, en appuyant sur une touche, hop ça déclenche les 2 écouteurs!



Y'a pas moyen de les dissociés? Ou une astuce pour faire un test et contourner le problème?



@+!