• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:vb2010 Sleepを使うと調子が悪くなる)

vb2010 Sleepを使うと調子が悪くなる

このQ&Aのポイント
  • vb2010でSleepを使うとPCの調子が悪くなる問題を解決する方法
  • Button1を押さずに×を押すと仕事を残して終了してしまう問題を解決する方法
  • SleepやApplication.DoEventsの適切な使い方を理解し、問題を回避する方法

質問者が選んだベストアンサー

  • ベストアンサー
回答No.2

Formを閉じたからといって For~Next処理が自動的に終了するわけではありません。 Formが閉じた後も、予定した回数分の処理を続けようとします。 なので、Formを閉じたときはFor~Next処理が終了するようにする必要があります。 (または、For~Next処理が終了するまではFormを閉じられないようにする) 今の処理では、ExitFlagでFor~Next処理を終了できるので、Formを閉じるイベントでExitFlagを立ててやれば、きれいに終了できます。

noname#185525
質問者

お礼

詳しい解説で良くわかりました。ありがとうございました。

その他の回答 (2)

  • hirotn
  • ベストアンサー率59% (147/246)
回答No.3

>Button1を押さないで とありましたので、フォームのクローズが呼ばれた際に、Button1_Clickと同等の処理を行えばよいと思いました。 そうすると、2つ該当するイベントがありますので、どちらか適切なイベントで実行して下さい。 という回答になります。フラグを更新するだけならばClosingでも良いのかな、と思います。

noname#185525
質問者

お礼

Closingに入れて何回か実験していますが大丈夫な様です。 再度回答いただきありがとうございました。

  • hirotn
  • ベストアンサー率59% (147/246)
回答No.1

×ボタンを押すということなので、延長でフォームを閉じるイベントが呼ばれます。 http://drinking-masa.cocolog-nifty.com/blog/2010/11/vbnet-d4df.html http://dobon.net/vb/dotnet/vb6/closingevent.html FormClosingイベント FormClosedイベント …タイミングは適切なものをご使用ください。

noname#185525
質問者

お礼

>延長でフォームを閉じるイベントが呼ばれます ちょっと意味が分かりませんが一度Cloingイベントで受け止めてEndで終わらせるということでしょうか。 Private Sub Form1_FormClosing(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles Me.FormClosing e.Cancel = True End End Sub

関連するQ&A

専門家に質問してみよう