|
> 追記ですが、Closeをコールした後にメッセージを送信する処理があるのですぐにShowDialogが表示されます。 > Close直後にShowDialogをコールするのがまずいのでしょうか?
一応動作しますが。 Form1:Button1,Timer1、Form2
Public Class Form1
Private f2 As Form2
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Timer1.Interval = 5000 End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Timer1.Enabled = True f2 = New Form2 f2.ShowDialog() f2.ShowDialog() f2.Dispose() Timer1.Enabled = False End Sub
Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick If f2 IsNot Nothing Then f2.Close() End If End Sub
End Class
例のメッセージはやはりズバリの事象を表しているわけで、魔界の仮面弁士さんが示されたような状態になっているはずです。 で、ShowDialogなので待ち状態になりますのでそのプロシージャに問題がある可能性は低いです。 やはりメッセージ云々とおっしゃっている仕組みが絡んでいるのではと思います。 #別スレッドとか もしくは送信が2連続で実行されるような状態になっていませんか?>ShowDialogとCloseの呼び出し部分にConsole.WriteLine入れてみては。
|