キーを押してもキーハンドラが起動しない
キーハンドラを起動させるには、キーハンドラの定義の他に、登録が必要です。
キーハンドラはコンストラクタなどで登録します。
// コンストラクタ MyWindow::MyWindow(Void) { // OnKey ハンドラをすべてのキーイベントに反応するように登録する // (エラー処理は省略) RegisterHandler(SFEVT_KEY, HANDLER_AFTER, HANDLER_FUNCTION(OnKey)); }
クリアーキーだけに反応させる場合
RegisterHandler(SFEVT_KEY, AVK_CLR, HANDLER_AFTER, HANDLER_FUNCTION(OnClear));
矢印キーだけに反応させる場合
// キーコードの範囲を指定して登録する (AVK_UP から AVK_RIGHT まで) RegisterHandler(SFEVT_KEY, AVK_UP, AVK_RIGHT, HANDLER_AFTER, HANDLER_FUNCTION(OnKey));