3.3. figur.85p - Demonstration der getKy Funktion

rc_next.gif (188 Byte)

 

Eine Figur soll entsprechend der Cursor Tasten auf dem Display bewegt werden. Wenn die [EXIT] Taste gedrückt wird, soll das Programm beendet werden.
Anweisung Erläuterung
:ClLCD Der Bildschirm wird gelöscht
:11®H:4®V Der [H]orizontale und [V]ertikale Startwert wird festgelegt.
:Outpt(V,H,"C") Die "Figur" C wird an der Startposition ausgegeben.
:Lbl S Die Marke S wird deklariert.
:getKy®E Die zuletzt gedrückte Taste wird ermittelt, der Wert wird in E gespeichert.
:If E==22:Stop Wenn die [Exit] Taste gedrückt wurde, wird das Programm beendet.
:If E==25:Then Wurde die ­ Taste gedrückt...
  :Outpt(V,H," ") ...wird die Figur an der aktuellen Position gelöscht.
  :If V>1 Steht die Figur noch nicht ganz oben auf dem Display...
    :V-1®V ...so wird der aktuelle vertikale Wert um eins vermindert.
  :Outpt(V,H,"C"):goto S Die Figur wird an neuer Position ausgegeben. Der Interpreter springt zur Marke S.
:Else:If E==34:Then Wurde die ¯ Taste gedrückt...
  :Outpt(V,H," ") ...wird die Figur an der aktuellen Position gelöscht.
  :If V<8 Steht die Figur noch nicht ganz unten auf dem Display...
    :V+1®V ...so wird der aktuelle vertikale Wert um eins erhöht.
  :Outpt(V,H,"C"):goto S Die Figur wird an neuer Position ausgegeben. Der Interpreter springt zur Marke S.
:Else:If E==24:Then Wurde die ¬ Taste gedrückt...
  :Outpt(V,H," ") ...wird die Figur an der aktuellen Position gelöscht.
  :If H>1 Steht die Figur noch nicht ganz links auf dem Display...
    :H-1®H ...so wird der aktuelle horizontale Wert um eins vermindert.
  :Outpt(V,H,"C"):goto S Die Figur wird an neuer Position ausgegeben. Der Interpreter springt zur Marke S.
:Else:If E==26:Then Wurde die ® Taste gedrückt...
  :Outpt(V,H," ") ...wird die Figur an der aktuellen Position gelöscht.
  :If H<21 Steht die Figur noch nicht ganz rechts auf dem Display...
    :H+1®H ...so wird der aktuelle horizontale Wert um eins erhöht.
  :Outpt(V,H,"C"):goto S Die Figur wird an neuer Position ausgegeben. Der Interpreter springt zur Marke S.
:End Ende der bedingten Anweisung, die E überprüft.
:goto S Die Ausführung wird an der Marke S weitergeführt.