• 締切済み

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のポイント
  • 中学3年生が母の誕生日プレゼントに18万円の品をネットで購入する予定。
  • 支払い方法はコンビニ支払いしか選べず、身分確認や手数料、連絡の可能性について不安を抱えている。
  • 他者に頼らず、自分でコンビニでの支払いを行いたいが、何が必要か教えてほしい。
回答を見る

専門家に質問してみよう