Newで立ち上げたWebBrowserのイベントをキャッチするには?

解決


tak  2004-10-12 13:08:24  No: 85978  IP: [192.*.*.*]

Window FormでInternet Exploreに対しての操作をするプログラムを作っています。
Form1をロード時に、
------------------------------------------------

Dim WebBrowser1 As SHDocVw.InternetExplorer
WebBrowser1 = New SHDocVw.InternetExplorer
WebBrowser1.Visible = True

------------------------------------------------
としてブラウザを立ち上げているのですが、フォームデザイナに実物がないため、WindowClosingといったイベントを指定する方法がわかりません。

------------------------------------------------
    Private Sub WebBrowser1_WindowClosing(ByVal sender As Object, ByVal e As AxSHDocVw.DWebBrowserEvents2_WindowClosingEvent) Handles WebBrowser1.WindowClosing
        If MsgBox(""閉じていいですか?", MsgBoxStyle.Question + MsgBoxStyle.YesNo + MsgBoxStyle.DefaultButton1) = MsgBoxResult.Yes Then
        End If
    End Sub
------------------------------------------------
としたところ、
「HANDLES句には、WithEvents変数が必要です」というエラーが出ました。

どなたかわかる方がいらっしゃいましたら、お助け願います。

編集 削除
raki  URL  2004-10-12 13:44:58  No: 85979  IP: [192.*.*.*]

Dim WebBrowser1 As SHDocVw.InternetExplorer
ではなく、
Dim WithEvents WebBrowser1 As SHDocVw.InternetExplorer
としてください。
また、宣言位置をイベントプロシージャ外へ出して下さい。

Formに貼り付けてあるコントロールと同じように
『コントロール名(変数名)を選択⇒イベントを選択』
でイベントプロシージャを記述できます。

編集 削除
tak  2004-10-12 14:25:31  No: 85980  IP: [192.*.*.*]

ありがとうございます
かいけつしました!

編集 削除