Accueil > Forum > > > > Keylistener et Key.isToggled
Keylistener et Key.isToggled
lundi 2 octobre 2006 à 11:02:08 |
Keylistener et Key.isToggled

manuken
|
Bonjour, J'utilise keylistener pour assigner une action à chaque touche appuyée au clavier par l'utilisateur. En gros, la lettre "t" apparait, si appui sur la bonne touche va à l'image 2 sinon va à l'image 3
Pour les lettres minuscules tout fonctionne bien mais comment faire la même chose avec les chiffres et les lettres accentuées ?. Pour le M (majuscule), dès que j'utilise la touche SHIFT il considère que c'est faux alors que je n'est pas encore appuyé sur la touche t.
voici la code utilisé :
keyListener = new Object(); keyListener.onKeyDown = function() if (Key.getCode() == 84) { // 84 = T gotoAndStop(2); Key.removeListener(keyListener);
} else { // si pas t gotoAndStop(3); Key.removeListener(keyListener); }
}; Key.addListener(keyListener);
HELP ME please !!!!  Manuken
|
|
lundi 2 octobre 2006 à 11:24:14 |
Re : Keylistener et Key.isToggled

shubenka
|
Salut Et bien tu fait pareil sauf que tu change 84 par le code correspondant a la touche voulu. si tu a pas envie de regarder dans la doc keyListener.onKeyDown = function() trace(Key.getCode()); } et tu appuie sur les touche accentué pour avoir le code des touches.
[ Lien ]
|
|
lundi 2 octobre 2006 à 14:24:04 |
Re : Keylistener et Key.isToggled

manuken
|
Merci de ta réponse, Bé oui ca m'affiche bien le code de la touche mais si je veux faire un 2 il me faut taper sur SHIFT ( donc code 16) puis 2 (code 50) mon code réagit donc à la première frappe sur SHIFT et fait un goto n°d'image Vois-tu le truc qui cloche dans le code ? j'ai bien essayé ca if (Key.getCode()== 16 && Key.getCode() == 50) { mais ca marche pas.
merci. Manuken
|
|
lundi 2 octobre 2006 à 15:53:04 |
Re : Keylistener et Key.isToggled

shubenka
|
ah ui qu'elle idée d'utilisé shift aussi. tu ne peut pas t'en passé ? sinon shift tu le gére uniquement quand il est relaché [ Lien ]
[ Lien ]
|
|
mardi 3 octobre 2006 à 09:16:08 |
Re : Keylistener et Key.isToggled

manuken
|
Hé hé salut... Si c'était simple je n'aurais pas posé la question.... Merci de ta réponse.  J'ai essayé le OnkeyUp Ce que j'en conclue c'est que part cette méthode il n'y a pas moyen de lui faire afficher un 2 en faisant SHIFT + (2é~) Par contre un 2 via le pavé numérique pas de problème ! c'est le code 98... Le but de mon jeu est d'initier le joueur au maniement des touches du clavier donc de savoir s'il doit appuyer sur SHIFT ou pas pour faire une lettre en majuscules ou le caractère de dessous... Je suis étonnné que Flash ne le premette pas. Ou alors vu que je suis débutant, je ne connais pas la méthode. La touche é a pour code 50 et 233 en ASCII la touche SHIFT le code 16 et 0 en ASCII la touche 2 du pavé numérique le code 98 et 50 en ASCII Y-a-t-il pas moyen de bidouiller un truc pour qu'il retourne l'appui des touches SHIFT + 2 avec le code du 2 au pavé numérique ? Histoire de le blouser ? Merci  Manuken
|
|
jeudi 5 octobre 2006 à 15:25:12 |
Re : Keylistener et Key.isToggled

adv
|
Salut, pour faire la différence entre les majuscules et minuscules, tu peux garder en mémoire l'état des touches MAJ et CAPSLOCK.
Dans onKeyDown "MAJ = true" et rien ne change pour CAPSLOCK Dans onKeyUp "MAJ = false" et "CAPSLOCK = not CAPSLOCK" (il s'inverse)
Après, tu fais un test "if(MAJ or CAPSLOCK)" et voilà. J'ai vite testé et la source (qui n'a pas lieu d'être déposée comme source) se trouve ici: http://www.odv.ch/flash/listen_key.zip
J'espère que ça t'aidera, bonne chance. adv
|
|
vendredi 6 octobre 2006 à 10:57:36 |
Re : Keylistener et Key.isToggled

manuken
|
adv, tout d'abord un grand merci pour ton aide et cet exemple que j'ai étudié à fond !!!
on va dire que j'ai compris le principe mais je n'arrive pas à l'additionner avec ce que je veux faire par la suite....
au lieu d'afficher tes champs texte dynamique dans le onenterframe = fonction()
j'ai mis ca :
onEnterFrame = function () {
if (etat_maj = true && Key.getCode() == 84){ // T Key.removeListener(keyListener); gotoAndStop(59); // l'image où il y a marqué BIEN } if (etat_maj = false && Key.getCode() == 84){ // t Key.removeListener(keyListener); gotoAndStop(60); // l'image où il y a marqué FAUX } };
Je suis dans la séquence où la bonne réponse est le "t" minucule....
Avec ce code ca marche une fois sur 2 (ce qui est bizarre...) et en plus il ne se passe rien si le joueur frappe une autre touche
Une fois sur l'image BIEN ou FAUX, j'ai un bouton qui envoie le joueur sur une autre séquence avec une autre lettre à taper....
Mon niveau de débutant est à son max avec ce code.... en grois c'est un peu chaud et je n'avance pas.... Merci de ton aide .... mais encore un ptit coup de main sera pas de refus..... 
;) manuken
|
|
vendredi 6 octobre 2006 à 11:19:15 |
Re : Keylistener et Key.isToggled

shubenka
|
onEnterFrame = function () {
if (etat_maj == true && Key.getCode() == 84){ // T Key.removeListener(keyListener); gotoAndStop(59); // l'image où il y a marqué BIEN } if (etat_maj == false && Key.getCode() == 84){ // t Key.removeListener(keyListener); gotoAndStop(60); // l'image où il y a marqué FAUX } };
[ Lien ]
|
|
vendredi 6 octobre 2006 à 11:27:58 |
Re : Keylistener et Key.isToggled

adv
|
Avec la correction proposée par shubenka ça devrait fonctionner.
Petite note de programmation: Mais il faut arrêter avec ces "etat_maj==true".
etat_maj est un boolean, il peut donc prendre la valeur false ou true.
A quoi bon faire un test entre 2 boolean qui renvoit un resultat boolean. Ca revient à faire if(true == true) ce qui est complétement inutile.
tu peux simplement utiliser le boolean, sans faire de test. Ce qui donne:
"if (etat_maj && Key.getCode() == 84)"
Voilà, on attend de tes nouvelles, à plus. adv
|
|
vendredi 6 octobre 2006 à 14:09:11 |
Re : Keylistener et Key.isToggled

manuken
|
Merci les gars... Bien vu le cours de programmation, compris ... ! ;) Pour ce qui est des nouvelles Pfffff c'est pas la joie.... De nature obstiné, je suis en train de craquer LOL Je me vois obligé de vous envoyer tout le code car il doit y avoir une erreur que je ne trouve pas.... Ca devient assez dur, là.....grrrrrrr (Je bosses sur Flash MX version 6) var keyListener = new Object();keyListener.onKeyDown = function () { var _l1 = Key.getCode(); switch (_l1) { case 16: { etat_maj = true; break; } } // End of switch if (_l1 >= 65 && _l1 <= 90) { if (etat_maj || etat_caps) { txt_cla.text = txt_cla.text + chr(_l1); } else { txt_cla.text = txt_cla.text + chr(_l1 + 32); } // end if } else if (_l1 == 32) { txt_cla.text = txt_cla.text + chr(_l1); } // end if }; keyListener.onKeyUp = function () { var _l1 = Key.getCode(); switch (_l1) { case 16: { etat_maj = false; break; } case 20: { etat_caps = !etat_caps; break; } }// End of switch }; Key.addListener(keyListener); onEnterFrame = function () { // bonne réponse t if (etat_maj && Key.getCode() == 84){ // T trace ("faux"); gotoAndStop(59); Key.removeListener(keyListener); } if (Key.getCode() == 84){ // t trace ("ok"); Key.removeListener(keyListener); gotoAndStop(60); } };
Merci
    
|
|
Cette discussion est classée dans : utilise, key, touche, keylistener, istoggled
Répondre à ce message
Sujets en rapport avec ce message
Changer d'image selon la touche [ par MaxusViardis ]
Salut,Voila j'ai créé un clip appellé "perso_face" sur lequel j'ai placé ce code:onClipEvent (enterFrame) { if (Key.isDown(Key.UP)) { this._y -= 1
les enterFrame [ par flashfanatics173 ]
onClipEvent (enterFrame) { if (Key.isDown(Key.SPACE)){ gotoAndStop(3); }}j'aimerais savoir ce qu'ai le code pour que au lieu que ca soit la touche
comment faire un else { sans if(...) [ par stefbuet ]
j'ai trois image avec 3 stop, je veux que quand l'on apuis sur la touche gauche, l'image 2 apparai, et sur la touche droite , l'image 3 apparais, et
changer d'image avec une touche. [ par bondika ]
Bonjour tout le monde, j'aimerai savoir comment rajouter dans un script, le fait que lorsque l'on appui sur une touche le personnage d'un jeu change d
onKeyDown [ par nuclearprout ]
Bonsoir. J'ai un petit soucis indissoluble... J'ai un clavier visuel constitué de clips dont les noms commencent tous par key + le nom de la touche
supprimer un Object [ par astrolabbcracker ]
bonjour et merci de lire ce message :je crée un objet pour qu'une fonction se lance quand on clique sur entrer mais à l'étape suivante, je voudrais su
touche du clavier [ par vegetalain ]
Salut, je ne trouve pas l'opposé de :if(Key.isDown(Key.RIGHT)) { blablabla...et ".isUp" n'a pas l'air d'exister !C pour faire un perso qui se déplace,
Appuis unique sur une touche du clavier [ par nicoool18 ]
Bonjour !!voila je suis en train de développer un jeu, et j'ai besoin pour plusieurs code d'uriliser le clavier.mais le probleme c'est que quand j'uti
Flash AS [ par gozila ]
Alors je vous presente mon probleme.Je veux deplacer mon perso et qu'il se remette de face a chaque fois que l'on relache les fleches car la sur mon c
if (Key.isDown(Key.UP))gotoMyPostAndHelpMe [ par Henji ]
J'ai 3 clips utilisant les mêmes fonctions type... if (Key.isDown(Key.UP)) gotoAndPlay(3);if (Key.isDown(Key.LEFT)) gotoAndPlay(13);Le
Livres en rapport
|
Derniers Blogs
[MIX10] KEYNOTE DEUXIèME JOURNéE - INTERNET EXPLORER 9, HTML5, VISUAL STUDIO 2010, ODATA[MIX10] KEYNOTE DEUXIèME JOURNéE - INTERNET EXPLORER 9, HTML5, VISUAL STUDIO 2010, ODATA par cyril
Le deuxième keynote du mix fut très riche en contenu. Internet Explorer 9 Juste un après le lancement de Internet Explorer 8, Microsoft a dévoilé les nouveautés de Internet Explorer 9. Désormais, IE supportera HTML5, SVG et CSS3. L'élément ...
Cliquez pour lire la suite de l'article par cyril CERTIFICATIONS BETA .NET 4CERTIFICATIONS BETA .NET 4 par KooKiz
Les inscriptions pour les certifications beta .NET 4 ont commencé. L'inscription est offerte pour les examens suivants : - 71-511, TS: Windows Applications Development with Microsoft .NET Framework 4 - 71-515, TS: Web Applications Development with...
Cliquez pour lire la suite de l'article par KooKiz [MIX 2010] - MICROSOFT TRANSLATOR TECHNOLOGY PREVIEW V2[MIX 2010] - MICROSOFT TRANSLATOR TECHNOLOGY PREVIEW V2 par redo
J'imagine que la plupart d'entre vous connaissent bien et utilisent le service de traduction de Google, mais connaissez-vous celui de Microsoft . Microsoft Translator ? Effectivement, Microsoft nous annoncé le lancement version 2 de la Technologie Preview...
Cliquez pour lire la suite de l'article par redo LANCEMENT EN PREVIEW DE CYCLONE LORS DES TECHDAYS 2010!LANCEMENT EN PREVIEW DE CYCLONE LORS DES TECHDAYS 2010! par MPOWARE
Toutes les vidéos de ce lancement sont en ligne!
Partie I - Intro
http://www.youtube.com/watch?v=LkQzTQ8T6CA
Partie II - Démo 1
http://www.youtube.com/watch?v=drAhYQ7lqvo
Partie III - Démo 2
http://www.youtube.com/watch?v=c8KM_1Gqybc...
Cliquez pour lire la suite de l'article par MPOWARE [WP7] JE NE VEUX PAS D'UN NOUVEL IPHONE[WP7] JE NE VEUX PAS D'UN NOUVEL IPHONE par FREMYCOMPANY
Je pense qu'ils ont besoin d'une piqure de rappel chez Microsoft : c'est bien gentil d'avoir une interface jolie, mais si c'est pour avoir un truc qui ne convainct pas dedans, c'est peine perdue.
---->
Système ouvert ----> Fermé ?
P...
Cliquez pour lire la suite de l'article par FREMYCOMPANY
Forum
RE : SETINTERVALRE : SETINTERVAL par poiuytreza92
Cliquez pour lire la suite par poiuytreza92
Logiciels
Xilisoft Convertisseur Vidéo Ultimate (5.1.39.0305)XILISOFT CONVERTISSEUR VIDéO ULTIMATE (5.1.39.0305)Xilisoft Convertisseur Vidéo Ultimate est un outil puissant de conversion vidéo, facile à utilise... Cliquez pour télécharger Xilisoft Convertisseur Vidéo Ultimate Xilisoft DVD Ripper Ultimate (5.0.64.0304)XILISOFT DVD RIPPER ULTIMATE (5.0.64.0304)Xilisoft DVD Ripper Ultimate est un logiciel excellent pour copier et convertir DVD vers presque ... Cliquez pour télécharger Xilisoft DVD Ripper Ultimate Rigs of Rods (63.3)RIGS OF RODS (63.3)c'est un jeu de multi-simulation camions,autobus voitures, avions, bateaux, hélicoptère avec défo... Cliquez pour télécharger Rigs of Rods Konvertor (4.00)KONVERTOR (4.00)Le logiciel est un gestionnaire multimedia affichant, jouant et convertissant plus de 2000 format... Cliquez pour télécharger Konvertor
|