hurtig tip: ved hjælp af as3 keycodes

, hurtigt tip: ved hjælp af as3 keycodes,,,,, 2,,,,,,,,, 3,,,,,,, det cyber - mandag envato tuts + kurser vil blive reduceret til $3.- og' t miss.,, lære at bruge nøglen koder i actionscript 3,0 at afsløre, når brugeren trykker på en bestemt nøgle.,,,, endelige resultat forpremiere, lad os tage et kig på det endelige resultat, vi arbejder hen imod:,, test svarene ved presning af nøglerne på din tastatur..., trin 1: tilføje tekst kasser, åbne et nyt flash - dokument.tilføj statisk tekst kasser til venstre, der har navnene på de nøgler, du vil afsløre og dynamisk tekst kasser med teksten "nej" i dem. giv din dynamisk tekst kasser instans navne med følgende format: ", keyname_txt".min er, ctrl_txt,, shift_txt,, left_txt,, up_txt,, right_txt,, down_txt, og space_text hhv.,, trin 2: skabe basiskoden, gå, fil 〉 nye og vælge, actionscript fil. nu oprettet det grundlæggende dokument klasse som det: hvis du vil lære om dokument klasser læse michael er hurtig tip), pakke (import flash.display.movieclip; offentlige klasse keycodes udvider movieclip {offentlige funktion keycodes() {}}}, trin 3: skabe lytteren begivenheder, for at afsløre, når brugeren trykker et nøgle as3 skal vi tilføje begivenhed lyttere, som lytter til en bruger, presning og frigivelse af nøgler.vi kan gøre det ved at tilføje følgende stykke kode ind i vores keycodes(), konstruktøren funktion:,, offentlig funktion keycodes() (fase. addeventlistener (keyboardevent.key_down, onkeypress); //tilføje en begivenhed til at lytte til den fase, der lytter efter en nøgle, der trykkede på scenen. addeventlistener (keyboardevent.key_up, onkeyrelease); //tilføje en begivenhed lytter til den fase, der lytter til en central frigives}, før vi går videre, vi er nødt til at tilføje en linje kode for import, keyboardevent,.tilføje denne linje kode under, hvor vi importerer det, movieclip, klasse på linje 3:, pakke (import flash.display.movieclip; import flash. begivenheder. keyboardevent;,, trin 4: enkle test under vores lyttere tilføje to funktioner, der vil blive behandlet, når brugeren enten presser eller afgiver en nøgle: offentlig funktion keycodes() {fase. addeventlistener (keyboardevent.key_down, onkeypress); //tilføje en begivenhed til at lytte til den fase, der lytter efter en nøgle, der trykkede på scenen. addeventlistener (keyboardevent.key_up, onkeyrelease); //tilføje en begivenhed til at lytte til den fase, der lytter til en central frigives funktion onkeypress e: keyboardevent): tomrum {} funktion onkeyrelease (e: keyboardevent): tomrum {}}, nu kan vi tilføje en, trace(), at hverså, når du trykker på en central funktion vil spore "centrale presset" i produktionen panel og "centrale løsladt", når nøglen er frigivet.for at gøre dette, kan vi tilføje følgende kode ind i vores funktioner: offentlig funktion keycodes() (fase. addeventlistener (keyboardevent.key_down, onkeypress); //tilføje en begivenhed til at lytte til den fase, der lytter efter en nøgle, der trykkede på scenen. addeventlistener (keyboardevent.key_up, onkeyrelease); //tilføje en begivenhed til at lytte til den fase, der lytter til en central frigives funktion onkeypress e: keyboardevent): ugyldig (spor ("centrale presset");} funktion onkeyrelease e: keyboardevent): ugyldig (spor ("centrale løsladt");}}, teste din film (ctrl + i).når du trykker på en nøgle, bør det spor "centrale presset" i deres produktion panel og "centrale løsladt", når du slipper det.,, løntrin 5: påvisning af keycodes, kan du afsløre, hvilken nøgle er blevet presset ved at spore nøgleordet.skifter spor fra spor ("centrale presset"), til at spore (e.keycode), og fjerne de vigtigste frigivet spor.din kode bør nu ser sådan ud: offentlig funktion keycodes() (fase. addeventlistener (keyboardevent.key_down, onkeypress); //tilføje en begivenhed til at lytte til den fase, der lytter efter en nøgle, der trykkede på scenen. addeventlistener (keyboardevent.key_up, onkeyrelease); //tilføje en begivenhed til at lytte til den fase, der lytter til en central frigives funktion onkeypress e: keyboardevent): ugyldig (spor (e.keycode)} funktion onkeyrelease e: keyboardevent): tomrum {}}, nu når du trykker på en nøgle vil spore den kode, der vedrører denne specifikke nøgle.hvis jeg trykker på den venstre pil det spor, 37, i output - panel og spacebar vil spore, 32,., med denne information bogstavelig talt i hånden, du kan udføre forskellige arrangementer i forskellige nøgler, alle med en begivenhed til at lytte.prøv at tilføje denne kodeks til deres funktion og se, hvad der sker, når du trykker på den spacebar:, funktion onkeypress e: keyboardevent): ugyldig (spor (e.keycode); hvis (e.keycode = = 32) (//hvis nøgleordet er lig med 32 (spacebar) spor ("spacebar presset")), hvis du trykker på den spacebar, vil det ikke kun spor af 32, det vil spore "spacebar presset".du kan bruge den til at håndtere mange forskellige nøgler separat i en funktion,.,, trin 6: ændre tekst om centrale presse, gå videre og slette spor i "hvis" erklæring.erstatte det med denne:, funktion onkeypress e: keyboardevent): ugyldig (spor (e.keycode); hvis (e.keycode = = 32) (//hvis nøgleordet er lig med 32 (spacebar) space_txt.text = "ja"; //ændre spacebar tekstboks "ja"}}, nu når du tryk på den spacebar, du skulle se spacebar etiket ændring fra "nej" til "ja". gør det for alle de nøgler, undtagen kontrol - og skift, som de har særlige muligheder for at blive opdaget., funktion onkeypress e: keyboardevent): ugyldig (hvis (e.keycode = = 37) (//37 er keycode for venstre - pil left_txt.text = "ja"} hvis (e.keycode = = 38) (//38 er keycode op pil up_txt.text = "ja"} hvis (e.keycode = = 39) (//39 er keycode lige pil right_txt.text = "ja"} hvis (e.keycode = = 40) (//40 -s keycode ned pil down_txt.text = "ja"} hvis (e.keycode = = 32) (//32 er keycode for spacebar space_txt.text = "ja"), trin 7: påvisning af kontrol - og skift, hvordan skal vi så finde ud af, om kontrol eller skift knapper er presset?hver enkelt har en let indbygget variabel, der automatisk er ændret, hvor nøglerne er presset.du kan se dem ved hjælp af følgende kode.denne kode under andre "hvis" udtalelser, onkeypress(),., hvis (e.ctrlkey = = sand) (ctrl_txt.text = "ja"} hvis (e.shiftkey = = sand) (shift_txt.text = "ja"}, note: er der også, altkey,, som vil afsløre, om alat nøglen er presset.dette vil kun fungere i adobe luft ansøgninger som presserende alat og fokuseret på en flash - fil, næsten altid vil tage fokus fra stg og derfor ikke arbejde.,, trin 8: skriv frigivelse funktion, for at skabe en overgang funktion, vi skal gøre, er at kopiere den kode i den, onkeypress(), funktion og ændre en få ting. er vi nødt til at ændre teksten til at sige "nej" i stedet for "ja", og kontrollere, om, ctrlkey, og shiftkey, er falske, ikke sandt.det er, hvad den endelige kode skal se ud:, pakke (import flash.display.movieclip; import flash.events.keyboardevent; offentlige klasse keycodes udvider movieclip {offentlige funktion keycodes() (fase. addeventlistener (keyboardevent.key_down, onkeypress); //tilføje en begivenhed til at lytte til den fase, der lytter efter en nøgle, der trykkede på scenen. addeventlistener (keyboardevent.key_up, onkeyrelease) //tilføje en begivenhed til at lytte til den fase, der lytter til en central frigives funktion onkeypress e: keyboardevent): ugyldig (hvis (e.keycode = = 37) (//37 er keycode for venstre - pil left_txt.text = "ja"} hvis (e.keycode = = 38) (//38 er keycode op pil up_txt.text = "ja"} hvis (e.keycode = = 39) (//39 er keycode lige pil right_txt.text = "ja"} hvis (e.keycode = = 40) (//40, er keycode ned pil down_txt.text = "ja"} hvis (e.keycode = = 32) (//32 er keycode for spacebar space_txt.text = "ja"} hvis (e.ctrlkey = = sand) (ctrl_txt.text = "ja"} hvis (e.shiftkey = = sand) (shift_txt.text = "ja"}} funktion onkeyrelease e: keyboardevent): ugyldig (hvis (e.keycode = = 37) (//37 er keycode for venstre - pil left_txt.text = "nej"} hvis (e.keycode = = 38) (//38 er keycode op pil up_txt.text = "nej"} hvis (e.keycode = = 39) (//39 er keycode lige pil right_txt.text = "nej"} hvis (e.keycode = = 40) (//40, er keycode ned pil down_txt.text = "nej"} hvis (e.keycode = = 32) (//32 er keycode for spacebar space_txt.text = "nej"} hvis (e.ctrlkey = = falske) (ctrl_txt.text = "nej"} hvis (e.shiftkey = = falske) (shift_txt.text = "nr."}}}}}, erklærer de funktioner i den pågældende betyder, at de vil være affald indsamles, hvis tilfælde lyttere er fjernet.hvis du hellere vil dette ikke ske, du kan erklære dem som metoder, som så:, pakke (import flash.display.movieclip; import flash.events.keyboardevent; offentlige klasse keycodes udvider movieclip {offentlige funktion keycodes() (fase. addeventlistener (keyboardevent.key_down, onkeypress); //tilføje en begivenhed til at lytte til den fase, der lytter efter en nøgle, der pressede fase. addeventlistener (keyboardevent.key_up, onkeyrelease); //tilføje en begivenhed til at lytte til den fase, der lytter til en central frigives} offentlig funktion onkeypress e: keyboardevent): ugyldig (hvis (e.keycode = = 37) (//37 er keycode for venstre - pil left_txt.text = "ja"} hvis (e.keycode = = 38) (//38 er keycode op pil up_txt.text ="ja"} hvis (e.keycode = = 39) (//39 er keycode lige pil right_txt.text = "ja"} hvis (e.keycode = = 40) (//40, er keycode ned pil down_txt.text = "ja"} hvis (e.keycode = = 32) (//32 er keycode for spacebar space_txt.text = "ja"} hvis (e.ctrlkey = = sand) (ctrl_txt.text = "ja"} hvis (e.shiftkey = = sand) (shift_txt.text = "ja"}} offentlig funktion onkeyrelease e: keyboardevent): ugyldig (hvis (e.keycode = = 37) (//37 er keycode til venstre pil left_txt.text = "nej"} hvis (e.keycode = = 38) (//38 er keycode op pil up_txt.text = "nej"} hvis (e.keycode = = 39) (//39 er keycode lige pil right_txt.text = "nej"} hvis (f. eks.keycode = = 40) (//40, er keycode ned pil down_txt.text = "nej"} hvis (e.keycode = = 32) (//32 er keycode for spacebar space_txt.text = "nej"} hvis (e.ctrlkey = = falske) (ctrl_txt.text = "nej"} hvis (e.shiftkey = = falsk) (shift_txt.text = "nej"}}}}, konkluderes, at teste din film, og alle vil være godt.hvis du har nogen bemærkninger eller spørgsmål, bare efter dem i bemærkninger (eller en anden del, og jeg vil besvare deres spørgsmål. tak for at læse, og jeg håber, at det hjalp med at lære mere om centrale presser på, flash.




Previous:
Next Page: