6.キーボードからの入力
前回はマウスからの入力によって動作が変わるプログラムを作成しましたが、今回はキーボードからの入力を使ったプログラムの作成です。
(1) キーを押すと線が伸びるプログラム
キーボードのキーがどれか一つ押されている場合にtrueになるのがシステム変数のkeyPressedです。これを使ったプログラム例を下に示します。
実行結果。キーを押す前が左、キーを押すと右の図になす。
演習1 何かキーが押されたら円が大きくなるプログラムを作成しなさい。
(2) 入力された文字を表示するプログラム
どのキーが押されたかということは、システム変数keyに格納されます。それを使ったプログラム例を次に示します。新たに出てきた命令、textSizeは描く文字の大きさを指定する命令、textAlignは文字の揃え方を中央か、右あるいは左揃えにするかを指定する命令、textはウィンドウに文字を描く命令で、最初の引数が文字、後の2つが座標です。keyの代わりに"abc"や'A'等と入力してみましょう。
(3) 押されたキーによって円や四角、三角を描くプログラム
押されたキーをif文で判断して行う命令を変化させます。cかCが押されたら円、rかRが押されたら四角、tかTが押されたら三角を表示するプログラムを考えます。keyはchar型の変数です。char型は1文字だけ文字を格納でき、表すときには'A'等と表します。ですので、char型の変数aにXという文字を代入するには
char a='X';
と書きます。この他に文字を表す形式にString型があります。こちらは、文字列、つまり複数の文字を扱う事ができ、例えば
String a="ABC";
と書きます。
前置きが長くなりましたが、押されたキーで描く図形を変えるプログラムです。
演習2 (1) 初期状態として白い四角を描き、rかdが押されたら赤く変化、gかrが押されたら緑に変化、bかlが押されたら青に変化するプログラムを作成せよ。
(2) 何もキーが押されていない場合には白になるプログラムに変更せよ。
演習3 大きさ30の円が何かキーが押されたら水平に移動し、押されていない場合には静止し、端まで来たら向きを変えるというプログラムを作成せよ。
0コメント