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
Clic pe tag-ul care creaza celula in tabel.
<tr> <span> <td>
<table></tr>
  <td>Cell-1</td><td>Cell-2</td>
</tr></table>
Indicati proprietatea CSS care adauga o imagine pentru fundal
background-color background-image color
h3 {
  background-image: url("image.jpg");
}
Ce instructiune se foloseste la parcugerea elementelor unui Array?
for() [) object()
var arr = [1, "ab", "CoursesWeb.net"];
for(var i=0; i< arr.length; i++) { alert(arr[i]); };
Indicati functia PHP utilizata la parcurgerea elementelor unui Array asociativ.
for() foreach() if()
$arr =["k1"=>"v1", "k2"=>"v2", "k3"=>"v3");
foreach($arr AS $k => $v) { echo "<br/>". $k ." - ". $v; }
Care din urmatoarele cuvinte este sinonim cu "gentle" (bland)?
meek good beautiful
He is so kind and meek.
- El este atat de amabil si bland.
Care din urmatoarele cuvinte este sinonim cu "amable" (bland, prietenos)?
hermoso fuerte manso
Tu padre tiene un carácter muy manso.
- Tatal tau are un caracter foarte bland.
KeyboardEvent - Evenimente pentru Tastatura

Last accessed pages

  1. Accentul si Pronuntia (14136)
  2. Gramatica limbii spaniole. Indrumator si prezentare generala (34843)
  3. MySQL JOIN, INNER, LEFT, RIGHT (1570)
  4. Curs si Tutoriale Ajax (30457)
  5. Prezent perfect si Prezent perfect continuu - Present perfect and Continuous (53563)

Popular pages this month

  1. Cursuri si Tutoriale: Engleza, Spaniola, HTML, CSS, Php-Mysql, JavaScript, Ajax (6525)
  2. Curs HTML gratuit Tutoriale HTML5 (5737)
  3. Curs si Tutoriale JavaScript (4430)
  4. Curs PHP MySQL, Tutoriale si Scripturi PHP (4297)
  5. Curs CSS Online Tutoriale CSS3 (4115)