VB.Net Tutorial/Windows/AxWebBrowser

Материал из VB Эксперт
Перейти к: навигация, поиск

AxSHDocVw AxWebBrowser

Imports System.Windows.Forms
public class AxSHDocVwAxWebBrowser
   public Shared Sub Main
        Application.Run(New Form1)
   End Sub
End class
Public Class Form1
    Inherits System.Windows.Forms.Form
    Public Sub New()
        MyBase.New()
        InitializeComponent()
    End Sub
    Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean)
        If disposing Then
            If Not (components Is Nothing) Then
                components.Dispose()
            End If
        End If
        MyBase.Dispose(disposing)
    End Sub
    Private components As System.ruponentModel.IContainer
    Friend WithEvents MainMenu1 As System.Windows.Forms.MainMenu
    Friend WithEvents ComboBox1 As System.Windows.Forms.ruboBox
    Friend WithEvents ToolBar1 As System.Windows.Forms.ToolBar
    Friend WithEvents ToolBarButton1 As System.Windows.Forms.ToolBarButton
    Friend WithEvents ToolBarButton2 As System.Windows.Forms.ToolBarButton
    Friend WithEvents ToolBarButton3 As System.Windows.Forms.ToolBarButton
    Friend WithEvents ToolBarButton4 As System.Windows.Forms.ToolBarButton
    Friend WithEvents ToolBarButton5 As System.Windows.Forms.ToolBarButton
    Friend WithEvents ImageList1 As System.Windows.Forms.ImageList
    Friend WithEvents Label1 As System.Windows.Forms.Label
    Friend WithEvents StatusBar1 As System.Windows.Forms.StatusBar
    Friend WithEvents StatusBarPanel1 As System.Windows.Forms.StatusBarPanel
    Friend WithEvents StatusBarPanel2 As System.Windows.Forms.StatusBarPanel
    Friend WithEvents StatusBarPanel3 As System.Windows.Forms.StatusBarPanel
    Friend WithEvents Timer1 As System.Windows.Forms.Timer
    Friend WithEvents AxWebBrowser1 As AxSHDocVw.AxWebBrowser
    Friend WithEvents MenuItem1 As System.Windows.Forms.MenuItem
    Friend WithEvents MenuItem2 As System.Windows.Forms.MenuItem
    Friend WithEvents Button1 As System.Windows.Forms.Button
    Friend WithEvents MenuItem3 As System.Windows.Forms.MenuItem
    <System.Diagnostics.DebuggerStepThrough()> Private Sub InitializeComponent()
        Me.ruponents = New System.ruponentModel.Container
        Dim resources As System.Resources.ResourceManager = New System.Resources.ResourceManager(GetType(Form1))
        Me.MainMenu1 = New System.Windows.Forms.MainMenu
        Me.MenuItem1 = New System.Windows.Forms.MenuItem
        Me.MenuItem2 = New System.Windows.Forms.MenuItem
        Me.MenuItem3 = New System.Windows.Forms.MenuItem
        Me.ruboBox1 = New System.Windows.Forms.ruboBox
        Me.ToolBar1 = New System.Windows.Forms.ToolBar
        Me.ToolBarButton1 = New System.Windows.Forms.ToolBarButton
        Me.ToolBarButton2 = New System.Windows.Forms.ToolBarButton
        Me.ToolBarButton3 = New System.Windows.Forms.ToolBarButton
        Me.ToolBarButton4 = New System.Windows.Forms.ToolBarButton
        Me.ToolBarButton5 = New System.Windows.Forms.ToolBarButton
        Me.ImageList1 = New System.Windows.Forms.ImageList(Me.ruponents)
        Me.Label1 = New System.Windows.Forms.Label
        Me.StatusBar1 = New System.Windows.Forms.StatusBar
        Me.StatusBarPanel1 = New System.Windows.Forms.StatusBarPanel
        Me.StatusBarPanel2 = New System.Windows.Forms.StatusBarPanel
        Me.StatusBarPanel3 = New System.Windows.Forms.StatusBarPanel
        Me.Timer1 = New System.Windows.Forms.Timer(Me.ruponents)
        Me.AxWebBrowser1 = New AxSHDocVw.AxWebBrowser
        Me.Button1 = New System.Windows.Forms.Button
        CType(Me.StatusBarPanel1, System.ruponentModel.ISupportInitialize).BeginInit()
        CType(Me.StatusBarPanel2, System.ruponentModel.ISupportInitialize).BeginInit()
        CType(Me.StatusBarPanel3, System.ruponentModel.ISupportInitialize).BeginInit()
        CType(Me.AxWebBrowser1, System.ruponentModel.ISupportInitialize).BeginInit()
        Me.SuspendLayout()
        "
        "MainMenu1
        "
        Me.MainMenu1.MenuItems.AddRange(New System.Windows.Forms.MenuItem() {Me.MenuItem1})
        "
        "MenuItem1
        "
        Me.MenuItem1.Index = 0
        Me.MenuItem1.MenuItems.AddRange(New System.Windows.Forms.MenuItem() {Me.MenuItem2, Me.MenuItem3})
        Me.MenuItem1.Text = "File"
        "
        "MenuItem2
        "
        Me.MenuItem2.Index = 0
        Me.MenuItem2.Text = "Open"
        "
        "MenuItem3
        "
        Me.MenuItem3.Index = 1
        Me.MenuItem3.Text = "Exit"
        "
        "ComboBox1
        "
        Me.ruboBox1.Location = New System.Drawing.Point(64, 32)
        Me.ruboBox1.Name = "ComboBox1"
        Me.ruboBox1.Size = New System.Drawing.Size(384, 21)
        Me.ruboBox1.TabIndex = 0
        "
        "ToolBar1
        "
        Me.ToolBar1.Buttons.AddRange(New System.Windows.Forms.ToolBarButton() {Me.ToolBarButton1, Me.ToolBarButton2, Me.ToolBarButton3, Me.ToolBarButton4, Me.ToolBarButton5})
        Me.ToolBar1.DropDownArrows = True
        Me.ToolBar1.ImageList = Me.ImageList1
        Me.ToolBar1.Location = New System.Drawing.Point(0, 0)
        Me.ToolBar1.Name = "ToolBar1"
        Me.ToolBar1.ShowToolTips = True
        Me.ToolBar1.Size = New System.Drawing.Size(512, 28)
        Me.ToolBar1.TabIndex = 1
        "
        "ToolBarButton1
        "
        Me.ToolBarButton1.ImageIndex = 0
        "
        "ToolBarButton2
        "
        Me.ToolBarButton2.ImageIndex = 1
        "
        "ToolBarButton3
        "
        Me.ToolBarButton3.ImageIndex = 2
        "
        "ToolBarButton4
        "
        Me.ToolBarButton4.ImageIndex = 3
        "
        "ToolBarButton5
        "
        Me.ToolBarButton5.ImageIndex = 4
        "
        "ImageList1
        "
        Me.ImageList1.ImageSize = New System.Drawing.Size(16, 16)
        Me.ImageList1.ImageStream = CType(resources.GetObject("ImageList1.ImageStream"), System.Windows.Forms.ImageListStreamer)
        Me.ImageList1.TransparentColor = System.Drawing.Color.Transparent
        "
        "Label1
        "
        Me.Label1.Location = New System.Drawing.Point(8, 32)
        Me.Label1.Name = "Label1"
        Me.Label1.Size = New System.Drawing.Size(48, 16)
        Me.Label1.TabIndex = 2
        Me.Label1.Text = "Address"
        "
        "StatusBar1
        "
        Me.StatusBar1.Location = New System.Drawing.Point(0, 278)
        Me.StatusBar1.Name = "StatusBar1"
        Me.StatusBar1.Panels.AddRange(New System.Windows.Forms.StatusBarPanel() {Me.StatusBarPanel1, Me.StatusBarPanel2, Me.StatusBarPanel3})
        Me.StatusBar1.ShowPanels = True
        Me.StatusBar1.Size = New System.Drawing.Size(512, 24)
        Me.StatusBar1.TabIndex = 4
        Me.StatusBar1.Text = "StatusBar1"
        "
        "StatusBarPanel1
        "
        Me.StatusBarPanel1.Width = 200
        "
        "StatusBarPanel3
        "
        Me.StatusBarPanel3.Width = 400
        "
        "Timer1
        "
        "
        "AxWebBrowser1
        "
        Me.AxWebBrowser1.Enabled = True
        Me.AxWebBrowser1.Location = New System.Drawing.Point(0, 56)
        Me.AxWebBrowser1.OcxState = CType(resources.GetObject("AxWebBrowser1.OcxState"), System.Windows.Forms.AxHost.State)
        Me.AxWebBrowser1.Size = New System.Drawing.Size(512, 216)
        Me.AxWebBrowser1.TabIndex = 5
        "
        "Button1
        "
        Me.Button1.Location = New System.Drawing.Point(456, 32)
        Me.Button1.Name = "Button1"
        Me.Button1.Size = New System.Drawing.Size(48, 24)
        Me.Button1.TabIndex = 6
        Me.Button1.Text = "Link"
        "
        "Form1
        "
        Me.AutoScaleBaseSize = New System.Drawing.Size(5, 13)
        Me.ClientSize = New System.Drawing.Size(512, 302)
        Me.Controls.Add(Me.Button1)
        Me.Controls.Add(Me.AxWebBrowser1)
        Me.Controls.Add(Me.StatusBar1)
        Me.Controls.Add(Me.Label1)
        Me.Controls.Add(Me.ToolBar1)
        Me.Controls.Add(Me.ruboBox1)
        Me.Menu = Me.MainMenu1
        CType(Me.StatusBarPanel1, System.ruponentModel.ISupportInitialize).EndInit()
        CType(Me.StatusBarPanel2, System.ruponentModel.ISupportInitialize).EndInit()
        CType(Me.StatusBarPanel3, System.ruponentModel.ISupportInitialize).EndInit()
        CType(Me.AxWebBrowser1, System.ruponentModel.ISupportInitialize).EndInit()
        Me.ResumeLayout(False)
    End Sub
    Dim flag As Boolean = False
    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Try
            AxWebBrowser1.Anchor = AnchorStyles.Top Or AnchorStyles.Bottom Or AnchorStyles.Left Or AnchorStyles.Right
            ComboBox1.Text = "about:blank"
            Timer1.Enabled = True
            AxWebBrowser1.Navigate(ComboBox1.Text)
        Catch ex As Exception
        End Try
    End Sub
    Private Sub MenuItem2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuItem2.Click
        Try
            Dim URL As String
            URL = "http://www.vbex.ru"
            ComboBox1.Text = URL
            Timer1.Enabled = True
            AxWebBrowser1.Navigate(URL)
        Catch ex As Exception
        End Try
    End Sub
    Private Sub MenuItem3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuItem3.Click
        End
    End Sub
    Private Sub ComboBox1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ComboBox1.SelectedIndexChanged
        If flag Then Exit Sub
        Timer1.Enabled = True
        AxWebBrowser1.Navigate(ComboBox1.Text)
    End Sub
    Private Sub ComboBox1_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles ComboBox1.KeyPress
        Dim t As Short = Asc(e.KeyChar)
        If t = System.Windows.Forms.Keys.Return Then
            ComboBox1_SelectedIndexChanged(ComboBox1, New System.EventArgs)
        End If
        If t = 0 Then
            e.Handled = True
        End If
    End Sub
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Dim URL As String
        URL = ComboBox1.Text
        AxWebBrowser1.Navigate(URL)
    End Sub
    Private Sub ToolBar1_ButtonClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.ToolBarButtonClickEventArgs) Handles ToolBar1.ButtonClick
        Try
            Select Case ToolBar1.Buttons.IndexOf(e.Button)
                Case 0
                    AxWebBrowser1.GoBack()
                Case 1
                    AxWebBrowser1.GoForward()
                Case 2
                    AxWebBrowser1.Stop()
                Case 3
                    AxWebBrowser1.GoHome()
                    ComboBox1.SelectedIndex = 0
                Case 4
                    Me.Close()
            End Select
        Catch ex As Exception
            Console.WriteLine("Error")
        End Try
    End Sub
    Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
        If AxWebBrowser1.Busy = True Then
            StatusBar1.Panels(0).Text = "Reading..."
        Else
            StatusBar1.Panels(0).Text = " "
            StatusBar1.Panels(0).Text = AxWebBrowser1.LocationName & " " & AxWebBrowser1.LocationURL
        End If
        StatusBar1.Panels(2).Text = Now.ToLongTimeString
    End Sub
    Private Sub AxWebBrowser1_DownloadComplete(ByVal sender As Object, ByVal e As System.EventArgs) Handles AxWebBrowser1.DownloadComplete
        Me.Text = AxWebBrowser1.LocationName
    End Sub
    Private Sub AxWebBrowser1_NavigateComplete2(ByVal sender As Object, ByVal e As AxSHDocVw.DWebBrowserEvents2_NavigateComplete2Event) Handles AxWebBrowser1.NavigateComplete2
        Dim i As Integer
        flag = True
        Me.Text = AxWebBrowser1.LocationName
        For i = 0 To ComboBox1.Items.Count - 1
            If CStr(ComboBox1.Items.Item(i)) = AxWebBrowser1.LocationURL Then
                ComboBox1.Items.RemoveAt(i)
                Exit For
            End If
        Next
        ComboBox1.Items.Insert(0, AxWebBrowser1.LocationURL)
        ComboBox1.SelectedIndex = 0
        flag = False
    End Sub
End Class