0

こんにちは、私は次のフォームを持っていますが、異なるボタンがクリックされたときに突然終了する理由を理解できませんか?

Public Class Form1

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

End Sub


Private Sub button1_MouseEnter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.MouseEnter

    Dim TEST1 As Integer = System.IO.Directory.GetFiles("C:\test\test").Length
    If TEST1 = 0 Then

        Me.WebBrowser1.Navigate("http://www.hotmail.com")

    End If

End Sub

Private Sub button1_MouseLeave(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.MouseLeave
    Me.WebBrowser1.Navigate("http://WWW.facebook.com")
End Sub

Private Sub button2_MouseLeave(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.MouseLeave
    Me.WebBrowser1.Navigate("http://WWW.facebook.com")
End Sub

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    Me.WebBrowser1.Navigate("file://C:\test\test")
    Button1.Enabled = False
    Button2.Enabled = True

End Sub

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click

    Me.WebBrowser1.Navigate("file://C:\test")
    Button2.Enabled = False
    Button1.Enabled = True
End Sub


Private Sub button2_MouseEnter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.MouseEnter

    Dim TEST2 As Integer = System.IO.Directory.GetFiles("C:\test\test").Length
    If TEST2 = 0 Then

        Me.WebBrowser1.Navigate("http://www.hotmail.com")

    End If

End Sub

フェイスブックとホットメールという用語は、会社のサイトを非公開にするためにランダムに使用されています :)

4

1 に答える 1

0

Mouse_EnterイベントとMouse_Leaveイベントが Web ブラウザーにドキュメントを完全にロードする時間を与えておらず、内部でクラッシュしている可能性があると思われます。

再度ナビゲートする前に、Web ブラウザーが動作を終了したかどうかを確認して、次のように伝えてください。

使用する

 If WebBrowser1.ReadyState = WebBrowserReadyState.Complete
      Me.WebBrowser1.Navigate("http://www.google.com")
 End if
于 2013-10-03T09:19:17.500 に答える