人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

VB.NETで1分間隔でSub _Check()を1回実行させたいんですが、下の記したものを実際動かしてみると1分後にSub _Check()を1回実行、2分後にSub _Check()を2回実行、3分後に3回・・
という感じでどんどん実行回数が増えていってしまいます。

ネットで以前拾ったフリーの物をいじっていて、以下のようになっているのですがどうやったら1分毎に1回だけ実行させるように変えられますか?

Sub aaa
AddHandler Timer.Tick, AddressOf Check
Timer.Interval = 60 * 1000
Timer.Enabled = True
End Sub

Sub Check()

AddHandler BackGround.DoWork, AddressOf _Check
AddHandler BackGround.RunWorkerCompleted, AddressOf Balloon_Show
If BackGround.IsBusy Then
Return
End If
BackGround.RunWorkerAsync()
End Sub

Sub _Check()
MsgBox("チェック")
End Sub

●質問者: ooppeoppe
●カテゴリ:コンピュータ
○ 状態 :終了
└ 回答数 : 1/1件

▽最新の回答へ

1 ● a-kuma3
●200ポイント ベストアンサー

こう、かな。

Sub aaa
 AddHandler Timer.Tick, AddressOf Check
 Timer.Interval = 60 * 1000
 Timer.Enabled = True

  ' BackGround への登録は一回だけ
 AddHandler BackGround.DoWork, AddressOf _Check
 AddHandler BackGround.RunWorkerCompleted, AddressOf Balloon_Show
End Sub

Sub Check()
 If BackGround.IsBusy Then
 Return
 End If
 BackGround.RunWorkerAsync()
End Sub

Sub _Check()
 MsgBox("チェック")
End Sub

ooppeoppeさんのコメント
出来ました。ありがとうございました。
関連質問

●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ