[概要]

キーボードが押されたことを監視して、押下状態を管理します。

キーボードイベント

SilverliSilverlight ではキーボードイベントとして以下のイベントが用意されています。

  • KeyDown
  • KeyUp

キーボードが押されると KeyDown イベントが発生して、イベントの引数である KeyEventArgs
には押されたキーが入っています。キーイベントを登録するコントロールはトップレベルのコントロール、
つまり画面のイベントとして登録するのが良いと思います。
今回はキーボードの状態を管理するための以下のようなクラスを作成しました。

キーボード状態は、毎回作るのは面倒なので Game クラスのメンバとしてしまいます。
Game クラスのコンストラクタの引数に UserControl を追加しました。
Game クラスをインスタンス化する時にキーボードイベントを登録するようにしました。

使い方

1. Game クラスのコンストラクタにページ自身の this を渡してください。
2. Game クラスのkeyStateには IsKeydown メソッドがあり、キーボードが押されている場合は true が返ります。

以下のサンプルでは、カーソルキーが押されている間、赤い円が表示されます。

2011/4/17 更新 | TOP↑

inserted by FC2 system