キー入力検知
やること
この教材 では、Jasmine Tea のプログラムでキーボードの入力を検知する方法を学びます。これにより、ユーザーからの入力に応じて動作するインタラクティブなプログラムを作成できます。
ステップ1
エディターに以下のプログラムを入力してみましょう。
print "キーを押してください(Escで終了)"
do
key$=inkey$()
if key$<>"" then
print "押されたキー:";key$
if key$="z" then
exit do
end if
end if
loop
print "プログラムを終了します。"
ステップ2
エディターの右下にある「▶実行」ボタンを押すと、入力したプログラムが実行されます。実行した後は、画面の右上にある「ドキュメント」タブを押して、ここに戻ってきてください。
では、「▶実行」ボタンを押してください。
ステップ3
実行画面に以下のように表示されたら成功です。
- キーを押すと、そのキー名が表示されます。
- 「z」キーを押すとプログラムが終了します。
ステップ4
実行したプログラムを解説します。
使っている命令の簡単な紹介
-
print
は指定したテキストを画面に表示する命令です。 -
inkey$
はキーボードの入力を検知する命令です。押されたキーを文字列として返します。 -
exit do
はdo-loop
を終了する命令です。
プログラムで行われていること
-
print
命令で「キーを押してください(Escで終了)」と表示します。 -
do-loop
内でinkey$()
を使い、キーボード入力を検知します。 -
入力されたキーが空文字(
""
)でない場合、そのキー名を表示します。 - 押されたキーが「z」の場合、ループを終了します。
- ループ終了後に「プログラムを終了します。」と表示します。
学ぶべきこと
- キー入力を検知する方法。
- ユーザー入力に応じた処理をプログラムに組み込む方法。
チャレンジ
- 押されたキーが「z」の場合にループを終了する動作を、別のキーに変更してみましょう。
-
特定のキー(例:
a
やx
)が押された場合に、それに応じたメッセージを表示する処理を追加してみましょう。 - 文字列変数を一つ作って、押されたキーをその変数に代入された文字列の末尾に追加していき、それを都度表示するように変更してみてください。