Curs Flash

Evenimentele pentru Tastatura (cand e apasat un buton de la tastatura) sunt detectate cu obiectul KeyboardEvent. Acesta are doua tipuri:


KeyboardEvent are 6 proprietati: - De retinut ca valorile codurilor pt. "charCode" si "keyCode" difera in functie de sistemul de operare al calculatorului. Exemplele de aici sunt pentru Windows.
- Ca sa fie detectat butonul apasat in prezentarea Flash, se aplica metoda addEventListener() (cu KeyboardEvent) la Scena (obiectul stage).

Iata un exemplu cu "KeyboardEvent" si KEY_DOWN in care e folosita proprietatea "keyCode", prin care va fi miscat un dreptunghi cu sagetile de la tastatura; iar proprietatea "shiftKey" va fi utilizata pt. a modifica viteza de miscare.
1. Deschideti un document Flash nou, ActionScript 3.0
2. Desenati un dreptungi si transformati-l in Movie Clip (de la meniul Modify -> Convert to Symbol, iar la Type alegeti Movie Clip si apasati OK), apoi, in panoul Properties, in partea de sus, unde e scris "<Instance Name>" scrieti numele dreptunghi (necesar in codul ActionScript).
3. Click-dreapta pe Cadru 1 in Timeline si alegeti Action, iar in panoul care se deschide pt. ActionScript adaugati urmatorul cod:
// Inregistrare eveniment pt. detectare apasare buton de la tastatura
// Detectarea se aplica obiectului 'stage' pt. a fi activ in toata prezentarea
stage.addEventListener(KeyboardEvent.KEY_DOWN, moveF);

// Functia apelata la apasarea tastei
function moveF(key_evt:KeyboardEvent):void
{
  // Setare variabila pt. viteza de miscare, in functie de "shiftKey"
  var vi:int = key_evt.shiftKey ? 12 : 2;

  // Instructiune "switch" cu valori si comenzi pt. tastele sageti
  // Codurile pt. sagetile: Stanga, Dreapta, Jos, Sus
  switch (key_evt.keyCode)
  {
  case 37:
    dreptunghi.x -= vi;
    break;
  case 39:
    dreptunghi.x += vi;
    break;
  case 38:
    dreptunghi.y -= vi;
    break;
  case 40:
    dreptunghi.y += vi;
    break;
  default:
    break;
  }
}
4. Apasati Ctrl+Enter ca sa testati rezultatul. Va apare urmatoarea prezentare Flash:.
- Cand apasati sagetile de la tastatura, dreptunghiul se va misca in directia data de fiecare sageata (intai sa dati click pe prezentare).
- Daca tineti apasata tasta Shift, viteza de miscare va fi mai mare.
- Expresia "var vi:int = key_evt.shiftKey ? 12 : 2;" defineste valoarea 12 daca "key_evt.shiftKey" e TRUE (cand Shift e apasat) sau 2 daca e FALSE (Shift neapasat).
- Comenzile din instructiunea "switch" modifica valoarea 'x' si 'y' pt. instanta "dreptunghi" (distanta X si Y), cu valoarea variabilei "vi", in functie de sageata apasata de la tastatura.

Ca sa aflati codul pt. fiecare tasta, puteti folosi urmatorul script AS3:
                stage.addEventListener(KeyboardEvent.KEY_DOWN, keyC);
                function keyC(key:KeyboardEvent):void { trace(key.keyCode); }

- Afiseaza in panoul Output codul tastei apasate.



- Fisierul FLA cu acest exemplu poate fi descarcat de la: Evenimente Tastatura.

Un Test simplu in fiecare zi

HTML
CSS
JavaScript
PHP-MySQL
Engleza
Spaniola
Ce atribut e folosit in tag-ul <img> pentru adresa imaginii?
href src rel
<img src="http://coursesweb.net/imgs/webcourses.gif" width="191" height="63" alt="Courses-Web" />
Care din aceste coduri CSS ascunde elementul in pagina?
display: none; display: inline; position: relative;
#id {
  display: none;
}
Ce instructiune opreste executia lui while() sau for() ?
continue prompt() break
for(var i = 0; i< 8; i++) {
  if(i > 1) break;
  alert(i);
}
Indicati functia utilizata pentru a crea constante.
define() include() defined()
define("CONSTANT_NAME", "value");
echo CONSTANT_NAME;
Care este forma de plural a substativului "class" (clasa)?
classes clases clasis
This school has three classes.
- Scoala asta are trei clase.
Care este pluralul substativului "voz" (voce)?
vose voze voces
Escuché dos voces.
- Am auzit doua voci.
KeyboardEvent - Evenimente pentru Tastatura

Last accessed pages

  1. Cursuri si Tutoriale: Engleza, Spaniola, HTML, CSS, Php-Mysql, JavaScript, Ajax (229169)
  2. Teste Programare Web (2286)
  3. jQuery metoda ajax() (709)
  4. Curs PHP MySQL, Tutoriale si Scripturi PHP (121336)
  5. Trecut perfect si Trecutul perfect continuu - Past perfect and Continuous (50006)

Popular pages this month

  1. Cursuri si Tutoriale: Engleza, Spaniola, HTML, CSS, Php-Mysql, JavaScript, Ajax (4189)
  2. Curs HTML gratuit Tutoriale HTML5 (3886)
  3. Curs si Tutoriale JavaScript (2527)
  4. Curs PHP MySQL, Tutoriale si Scripturi PHP (2482)
  5. Blog si Cugetari Personale (2396)