• 締切済み

VCでタイマー動作中にキー入力させるには

Visual C++6.0なのですが。 OnTimerでアニメーションを表示させています。 アニメーション表示中にキー入力をしたいのですが、 キー入力を受け付けません。 何かテクニックがあるのでしょうか。 よろしくお願いします。

みんなの回答

noname#9414
noname#9414
回答No.1

おそらく、OnTimer関数の中で、キーイベントを 取っているのだと推測した上でお答えします。 OnTimer関数は、タイマーが切れたときのみ、 呼び出されるので、そこにキーイベントを記述しても 絶対にキーイベントを取得することは出来ない でしょう。何しろ、タイマーが切れた瞬間しか、 イベントのチェックをしないのですから・・・ 解決方法としては、CreateThread関数などで、 別スレッドを作成して、そちら側でタイマーを 呼び出すか、キーイベントを取得してあげることに よって、イベントを別扱いに出来るので、キー 入力を受け付けてくれるはずです。 別段テクニックとかそういうものではなく、単純に タイマーをきちんと理解しているかどうかなので、 もう一度タイマーの部分を読み直してください。 きつくなってしまいましたが、がんばってください。 ではでは☆

herumes
質問者

お礼

PreTranslateMessage(MSG* pMsg)をオーバーライト することでキー入力できました。 ありがとうございます。

herumes
質問者

補足

親切な回答ありがとうございます。 前回の書き込みからいろいろ調べました。その結果、 FormView上にButtonを配置しているのですが、 ButtonにフォーカスがあるのでFormViewの ほうでキー入力を受けることができないようです。 やっぱり、別スレッドを作成しないといけないのでしょうか。 がんばってみます。

関連するQ&A

専門家に質問してみよう