KeyCode

Fra HTX Arduino
Spring til navigation Spring til søgning

Eksemplet tager udgangspunkt i keyCode på processing.org[1]

Tast fortolkning på specielle taster

Når der tastes en tast, så vil alle taster aktivere keyPressed(). For at kunne teste hvilken tast der er trykket på kan man teste på key om det er en CODED key. Hvis det ikke er en CODED, så er de fleste taster direkte angivet i key. Der er dog nogle enkelte undtagelser, hvilket er afspejlet i den første del af koden i keyPressed().

Hvis det er en CODED key, så er der specielle koder for nogle af tasterne, mens andre blot er defineret ved et tal, som det testes i den sidste del af keyPressed(). Dette vises i draw().

String tast = "";
void setup() {
  size(240, 120);
  textSize(20);
}

void draw() {
  background(255);
  fill(0);
  text("tast = " + tast, 10, 30);
  text("keyCode = " + keyCode, 10, 60);
}

void keyPressed() {
  if (key != CODED) {
    tast = "" + key;
    if (keyCode ==     ENTER) { tast = "ENTER"; }
    if (keyCode ==       TAB) { tast = "TAB"; }
    if (keyCode == BACKSPACE) { tast = "BACKSPACE"; }
    if (keyCode ==       ' ') { tast = "SPACE"; }
    if (keyCode ==    DELETE) { tast = "DELETE"; }
  } else {
    if (keyCode ==      UP) { tast = "UP"; }
    if (keyCode ==    DOWN) { tast = "DOWN"; }
    if (keyCode ==   RIGHT) { tast = "RIGHT"; }
    if (keyCode ==    LEFT) { tast = "LEFT"; }
    if (keyCode ==   ENTER) { tast = "ENTER"; }
    if (keyCode ==   SHIFT) { tast = "Shift"; }
    if (keyCode == CONTROL) { tast = "Ctrl"; }
    if (keyCode ==     ALT) { tast = "Alt"; }
    if (keyCode ==      20) { tast = "Caps"; }
    if (keyCode ==     144) { tast = "Numlk"; }
    if (keyCode ==      33) { tast = "PgUp"; }
    if (keyCode ==      34) { tast = "PgDn"; }
    if (keyCode ==      35) { tast = "End"; }
    if (keyCode ==      36) { tast = "Home"; }
    if (keyCode ==     155) { tast = "Insert"; }
    if (keyCode ==      12) { tast = "Num5"; }
    if (keyCode >= 112 && keyCode <= 123 ) { tast = "F" + (keyCode - 111); }
  }
}

Referencer

  1. keyCode på Processing.org
Spiludvikling - Processing
Bruger-input mousePressed() - mouseReleased() - mouseClicked() - mouseMoved() - mouseDragged() - mouseX og mouseY - mouseButton - mousePressed - keyPressed() - keyReleased() - keyTyped() - key - keyCode - keyPressed - Flere taster
Data-model Objekt Placering - Objekt Hastighed - Spilleplade - Flere Objekter - Array i Spil - 2-dimensionelt Array - Spil Hop - Highscore - Start-skærm
Visning Rektangel - Cirkel - Spilleplade - Grafikobjekter - Farver i Spil - Kollision
Spil-tid frameRate - Objekter i Bevægelse - Spilletid - Spil Opdatering - Udvikling i Tid