2つのTimerの制御について

解決


勉強中  2007-08-28 21:39:44  No: 143853

最近VB.NETの勉強を初めた初心者です。

System.Windows.Forms.Timer(画面で時計のマークから作れるクラス)を
2つ作り、それぞれに別々の処理を実装しています。詳細は下記の通り
です。

・timer1:画面上に「HH:MM:ss」を表示する処理を実装しています。
・timer2:ある関数を呼び出します。(1度関数を呼び出したら関数が
              終了するまでタイマーをストップします)

上記の場合、timer2を「Me.timer2.Enabled = False」でタイマーを止めると
何故かtimer1の方もとまってしまっているようです。
また、「System.Threading.Thread.Sleep(XXX)」でスリープさせてもその
時間だけtimer1もスリープしてしまいます。
解決方法はないでしょうか?


我龍院  2007-08-28 22:04:56  No: 143854

関数処理中はApplication.DoEventsを入れないと
Timer1の方に処理は回りません。
時間を表示するなら、マルチスレッドにする方法が
良いと思われます。


勉強中  2007-08-28 23:02:11  No: 143855

我龍院さん回答ありがとうございます。
マルチスレッドにして無事に解決する事ができました!


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加