次のようなループで処理を行っていて、あるボタン([中止]ボタン)を押した
時にだけ処理を中止するようなことはできるでしょうか?できるのであれば
その方法を教えて下さい。
(例)
for(int i = 0; i < 100; i++){
ループをしているときにボタンは押せますか?
普通はこういう処理はスレッドに分けてます。
開発環境が明記されていないため、具体的なやり方は説明できませんが。
途中で間違えて送信してしまいました。再度質問します。
次のようなループで処理を行っていて、あるボタン([中止]ボタン)を押した
時にだけ処理を中止するようなことはできるでしょうか?できるのであれば
その方法を教えて下さい。
(例)
for(int i = 0; i < 100; i++){
(何らかの処理)
....
if(中止ボタンが押されたかどうか判定){
i=100;
}
}
上の例の、「中止ボタンが押されたかどうか判定」の部分は、
どうすればいいでしょうか?
PeekMessage()を使ってみたのですが、マウスをちょっと動かしただけでループから抜けてしまいます。
特定のボタンにのみ反応するようにするには、そのmessageの内容を判断
しないといけないと思うのですが、その方法がよくわかりません。
なお、使っているのは、Microsoft Visual Studio .NET 2003で、
MFCアプリケーションでプロジェクトを作成していて、
メインの処理を開始するためのボタンと中止ボタンを同じDialogに置いて
使おうとしています。
よろしくお願いします。
類似スレです。参考にどうぞ。
ループ処理中に他のコントロールを制御するには
http://rararahp.cool.ne.jp/cgi-bin/lng/vc/vclng.cgi?print+200208/02080076.txt
ご教示ありがとうございました。参考にしてやってみます。
またわからないことがありましたらよろしくお願いいたします。