Mongoose World 2 ist ein sehr einfacher WebBrowser mit der Fähigkeit Zeile die in einem neuen Fenster zu laden sind, in Mongooses neuem Fenster zur laden...
VBVersion: VB8
*Das Bild zeigt nur den Browser auf den dieses IE-Element angewendet wurde!
VB.NET-Quellcode
- Imports System.Runtime
- Imports System.ComponentModel
- Public Class MongooseBrowser
- Inherits WebBrowser
- Private cookie As AxHost.ConnectionPointCookie
- Private events As WebBrowserExtendedEvents
- Private Const WM_PARENTNOTIFY As Integer = &H210
- Private Const WM_DESTROY As Integer = 2
- Public Event WindowClosing()
- Protected Overrides Sub WndProc(ByRef m As Message)
- Select Case m.Msg
- Case WM_PARENTNOTIFY
- If (Not DesignMode) Then
- If (m.WParam = WM_DESTROY) Then
- RaiseEvent WindowClosing()
- End If
- End If
- DefWndProc(m)
- Case Else
- MyBase.WndProc(m)
- End Select
- End Sub
- Protected Overloads Overrides Sub CreateSink()
- MyBase.CreateSink()
- events = New WebBrowserExtendedEvents(Me)
- cookie = New AxHost.ConnectionPointCookie(Me.ActiveXInstance, events, GetType(DWebBrowserEvents2))
- End Sub
- Protected Overloads Overrides Sub DetachSink()
- If cookie IsNot Nothing Then
- cookie.Disconnect()
- cookie = Nothing
- End If
- MyBase.DetachSink()
- End Sub
- Public Event NewWindowWithTaget As EventHandler(Of WebBrowserExtendedNavigatingEventArgs)
- Protected Sub OnNewWindow3(ByVal url As String, ByVal e As WebBrowserExtendedNavigatingEventArgs)
- RaiseEvent NewWindowWithTaget(Me, e)
- End Sub
- Private Class WebBrowserExtendedEvents
- Inherits System.Runtime.InteropServices.StandardOleMarshalObject
- Implements DWebBrowserEvents2
- Private _Browser As ExtendedWebBrowser
- Public Sub New(ByVal browser As ExtendedWebBrowser)
- _Browser = browser
- End Sub
- Public Sub NewWindow3(ByVal pDisp As Object, ByRef cancel As Boolean, ByRef flags As Object, ByRef hostURL As Object, ByRef URL As Object) Implements DWebBrowserEvents2.NewWindow3
- Dim args As New WebBrowserExtendedNavigatingEventArgs(URL)
- args.Cancel = cancel
- _Browser.OnNewWindow3(URL, args)
- cancel = args.Cancel
- End Sub
- End Class
- <InteropServices.ComImport(), InteropServices.Guid("34A715A0-6587-11D0-924A-0020AFC7AC4D"), InteropServices.InterfaceTypeAttribute(InteropServices.ComInterfaceType.InterfaceIsIDispatch), InteropServices.TypeLibType(InteropServices.TypeLibTypeFlags.FHidden)> _
- Public Interface DWebBrowserEvents2
- <InteropServices.DispId(273)> _
- Sub NewWindow3(ByVal pDisp As Object, ByRef cancel As Boolean, ByRef flags As Object, ByRef hostURL As Object, ByRef URL As Object)
- End Interface
- End Class
- Public Class WebBrowserExtendedNavigatingEventArgs
- Inherits CancelEventArgs
- Private _Url As String
- Public Sub New(ByVal url As String)
- _Url = url
- End Sub
- Public ReadOnly Property Url() As String
- Get
- Return _Url
- End Get
- End Property
- End Class
Keine PN's bezüglich VB an mich! Dafür gibt es das Forum!
:Kreis hier. Kreis da.:
Dieser Beitrag wurde bereits 8 mal editiert, zuletzt von „mikeb69“ () aus folgendem Grund: VB-Version hinzugefügt.