私は自分のアプリケーションの多くの場所でこのコードを使用しており、代わりにタイマーを使用していることは知っていますが、それは約 20 個のタイマーを追加する必要があることを意味します..これの問題は、これが実行されていてアプリを閉じる場合ですハングします..このような関数を使用する代わりに、1つのタイマーを使用する代替手段はありますか?
Public Sub Delay_App(ByVal DelayInMilliseconds As Integer)
Dim ts As TimeSpan
Dim targetTime As DateTime = DateTime.Now.AddMilliseconds(DelayInMilliseconds)
Do
ts = targetTime.Subtract(DateTime.Now)
Application.DoEvents()
System.Threading.Thread.Sleep(50)
Loop While (ts.TotalSeconds > 0) AndAlso Application.OpenForms.Count > 0
End Sub