にテキストを変更し、それを行うための適切な方法は、このようなものです:
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
'Set the interval at startup.
Timer1.Interval = CInt(GetNextNotificationTime().Subtract(Date.Now).TotalMilliseconds)
End Sub
Private Sub Timer1_Tick(sender As Object, e As EventArgs) Handles Timer1.Tick
'Set the interval at each notification.
Timer1.Interval = CInt(GetNextNotificationTime().Subtract(Date.Now).TotalMilliseconds)
'Not sure whether this is required when the Interval changes or not.
Timer1.Stop()
Timer1.Start()
'Do the work here.
End Sub
Private Function GetNextNotificationTime() As Date
'...
End Function
あなたはGetNextNotificationTime
方法は、通知時間があるかに依存していることを実装する方法保存される。 Timer
は、通知の期限が到来する場合にのみTick
になります。
もちろん、アプリケーション起動時に起動する「Timer」でもかまいません。 'Interval'は、' Timer'がTickイベントを発生させたときに制御します。適切な値に設定するだけです。アプリケーションが2.37 PMで開始し、5.00 PMを表示するメッセージが必要な場合は、2時間23分で「間隔」をミリ秒数に設定します。それは簡単な数学です。 – jmcilhinney
プログラムが自動的に必要なので、プログラムを開くたびに、時間を変更することは自動ではありません。とにかくありがとうございます –
"自動"と "魔法"が混乱しています。自動とは、ユーザーの介入なしにコードが実行することを意味します。あなたが望むことをするコードを書くと、あなたが望むものが自動的に起こります。私の前のコメントで私が言ったことを正確に実証するために私の答えを見てください。 – jmcilhinney