プチコンで遊ぼう! (はてなブログ版)

任天堂3DSのプチコンで遊ぼう! [twitter:@eida_s]

はてなダイアリーから移行しました。 はてなダイアリーのURLを開いても自動的にこちらにリダイレクトされますのでご了承ください。

SMILE BASIC 小技(4)

1フレーム単位で動くプログラムを作っているとほぼ縁がないが、キー入力が必要なプログラムでは、キーボードバッファを空にさせたい場合がある。
この時は次のようにする。

WHILE INKEY$()!="":WEND  'キーバッファを空にする


少しだけ応用して、キーボードバッファに入っている内容のうち、最後に押されたキーを調べる例:

?"キー入力待ち..."
WAIT 200
VAR K0$,K$
REPEAT
 K0$=K$
 K$=INKEY$()
UNTIL K$==""
?K0$

K0$には直前のK$の値が入っているので、K$が""になった時、最後にK0$に入っていたのが最後に押されたキーとなる。