あなたの習慣について教えてください!!

VC初心者です。

MFCのアプリでダイアログのプロジェクトを作りました。
そこで別のクラスを作成し、無限ループをしているのですが、
ボタンのイベントが発生しません。
どのようにすればボタンのイベントが発生するのでしょうか?

A 回答 (2件)

その手の質問は過去に何度かでているので調べてみるといいでしょう。



http://oshiete1.goo.ne.jp/kotaeru.php3?q=362155
http://oshiete1.goo.ne.jp/kotaeru.php3?q=1378154

解決方法は色々ありますが
1.マルチスレッドにする。
2.PeekMessageを使う。
3.OnTimer(WM_TIMER)等を使って無限ループにならない仕組みにする。
などです。

この回答への補足

ご回答ありがとうございます。
今回はPeekMessageを利用することにしました。
大変助かりました。

補足日時:2006/01/26 11:27
    • good
    • 0

無限ループをさせてしまうと、そのダイアログの処理がそのループ内で止まってしまうことになり、イベントが受けられない状態になります。


これを防ぐにはスレッドを使うのが良いでしょう。
スレッドを作成し、そのスレッド内でループさせてください。
ただしノーウェイトでループさせると処理が重くなるかもしれないので注意してください。
    • good
    • 0
この回答へのお礼

早速のご回答ありがとうございます。
スレッドは利用した事がありませんので
これを気に覚えてみようと思います。

お礼日時:2006/01/26 11:27

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています


おすすめ情報