Делаем браузер — различия между версиями

Материал из НГПУ им. К.Минина
Перейти к: навигация, поиск
(Новая: Написания браузера на vb6 не состоявляет большого труда и его создание не требует глубоких познаний в ...)
 
Строка 4: Строка 4:
 
Теперь давайте рассмотрим методы работы с ним:
 
Теперь давайте рассмотрим методы работы с ним:
 
Разместите на форме button, двойным нажатием на нем вызовите редактор кода, (всё там удалите) после чего пишем:
 
Разместите на форме button, двойным нажатием на нем вызовите редактор кода, (всё там удалите) после чего пишем:
'''Dim site As String
+
@@Dim site As String
  
 
Private Sub Command1_Click() ' переход на сайт
 
Private Sub Command1_Click() ' переход на сайт
 
site = "http://wiki.vgipu.ru"
 
site = "http://wiki.vgipu.ru"
 
WebBrowser1.Navigate site
 
WebBrowser1.Navigate site
End Sub'''
+
End Sub@@
  
 
В режиме просмотра кликнув на кнопке вы перейдёте на главную страницу нашего форума. Иногда бывает что нужно принудительно остановить загрузку страницы, в этом нам поможет:
 
В режиме просмотра кликнув на кнопке вы перейдёте на главную страницу нашего форума. Иногда бывает что нужно принудительно остановить загрузку страницы, в этом нам поможет:
'''Private Sub Command2_Click() ' стоп
+
@@Private Sub Command2_Click() ' стоп
 
WebBrowser1.Stop
 
WebBrowser1.Stop
End Sub'''
+
End Sub@@
  
 
Тоесть опять создаём на форме кнопку(button) и вбиваем этот код.
 
Тоесть опять создаём на форме кнопку(button) и вбиваем этот код.
 
В случае если нужно знать когда страница на 100% загружена, нужно написать следующее:
 
В случае если нужно знать когда страница на 100% загружена, нужно написать следующее:
'''Private Sub WebBrowser1_DocumentComplete(ByVal pDisp As Object, URL As Variant)
+
@@Private Sub WebBrowser1_DocumentComplete(ByVal pDisp As Object, URL As Variant)
 
MsgBox "Загрузка оконченна"
 
MsgBox "Загрузка оконченна"
End Sub'''
+
End Sub@@
  
 
Для удобства разместите внизу на форме Label, в котором будет отоброжаться состояние браузера и замените MsgBox "Загрузка оконченна" на Label1.Caption "Загрузка оконченна"
 
Для удобства разместите внизу на форме Label, в котором будет отоброжаться состояние браузера и замените MsgBox "Загрузка оконченна" на Label1.Caption "Загрузка оконченна"
  
 
Используя метод LocationName можно отображать название текущего сайта в заголовке браузера:
 
Используя метод LocationName можно отображать название текущего сайта в заголовке браузера:
'''Private Sub WebBrowser1_DownloadComplete()
+
@@Private Sub WebBrowser1_DownloadComplete()
 
Form1.Caption = WebBrowser1.LocationName
 
Form1.Caption = WebBrowser1.LocationName
End Sub'''
+
End Sub@@
  
 
Ну и конечноже как и в любом другом браузере довайте разместим ещё 4 кнопки *Назад*, *Вперед*, *Обновить*, *Домой*. В Caption для удобства напишите соответственно для каждой кнопки свой заголовок, тобиш текст который будет отоброжаться на кнопке.
 
Ну и конечноже как и в любом другом браузере довайте разместим ещё 4 кнопки *Назад*, *Вперед*, *Обновить*, *Домой*. В Caption для удобства напишите соответственно для каждой кнопки свой заголовок, тобиш текст который будет отоброжаться на кнопке.
 
Вбиваем код:
 
Вбиваем код:
'''Private Sub Command3_Click()
+
@@Private Sub Command3_Click()
 
On Error Resume Next
 
On Error Resume Next
 
WebBrowser1.GoBack ' Назад
 
WebBrowser1.GoBack ' Назад
Строка 48: Строка 48:
 
On Error Resume Next
 
On Error Resume Next
 
WebBrowser1.GoHome ' Перейти на домашнюю страничку
 
WebBrowser1.GoHome ' Перейти на домашнюю страничку
End Sub'''
+
End Sub@@
  
 
Если хотите сделать прогресс бар, не проблема, можно его добавить. Лежит он в компоненте Microsoft Windows Common controls.
 
Если хотите сделать прогресс бар, не проблема, можно его добавить. Лежит он в компоненте Microsoft Windows Common controls.
 
И пишем такой код:
 
И пишем такой код:
'''Private Sub WebBrowser1_ProgressChange(ByVal Progress As Long, ByVal ProgressMax As Long)
+
@@Private Sub WebBrowser1_ProgressChange(ByVal Progress As Long, ByVal ProgressMax As Long)
 
On Error Resume Next
 
On Error Resume Next
 
     If Progress = -1 Then ProgressBar1.Value = 100 'the name of the progress bar is "ProgressBar1".
 
     If Progress = -1 Then ProgressBar1.Value = 100 'the name of the progress bar is "ProgressBar1".
Строка 61: Строка 61:
 
     End If
 
     End If
 
     Exit Sub
 
     Exit Sub
End Sub'''
+
End Sub@@
  
 
Еще две важных вещи: сохранение страницы и авторазмер с скрытием ошибок по javascript:
 
Еще две важных вещи: сохранение страницы и авторазмер с скрытием ошибок по javascript:
'''Private Sub Command9_Click()'Сохранение страницы
+
@@Private Sub Command9_Click()'Сохранение страницы
 
WebBrowser1.ExecWB OLECMDID_SAVEAS, OLECMDEXECOPT_DODEFAULT
 
WebBrowser1.ExecWB OLECMDID_SAVEAS, OLECMDEXECOPT_DODEFAULT
End Sub'''
+
End Sub@@
  
 
Ну и естественно добавте оптимизатор:
 
Ну и естественно добавте оптимизатор:
'''Private Sub Form_Resize()
+
@@Private Sub Form_Resize()
 
On Error Resume Next
 
On Error Resume Next
 
WebBrowser1.Width = Me.ScaleWidth
 
WebBrowser1.Width = Me.ScaleWidth
 
WebBrowser1.Height = Me.ScaleHeight - 1680
 
WebBrowser1.Height = Me.ScaleHeight - 1680
 
WebBrowser1.Silent = True
 
WebBrowser1.Silent = True
End Sub'''
+
End Sub@@

Версия 10:27, 8 сентября 2010

Написания браузера на vb6 не состоявляет большого труда и его создание не требует глубоких познаний в программировании.

Для начала давайте создадим стандартную форму, после чего на ней нам нужно разместить основной компонент нашего браузера Micosoft internet controls. Жмём Проект\Компоненты на страничке Controls отмечаем флажком компонент Microsoft Internet Controls после чего жмём окей и на панели Toolbox появиться этот обьект ввиде глобуса. Размещаем его на форме. Теперь давайте рассмотрим методы работы с ним: Разместите на форме button, двойным нажатием на нем вызовите редактор кода, (всё там удалите) после чего пишем: @@Dim site As String

Private Sub Command1_Click() ' переход на сайт site = "http://wiki.vgipu.ru" WebBrowser1.Navigate site End Sub@@

В режиме просмотра кликнув на кнопке вы перейдёте на главную страницу нашего форума. Иногда бывает что нужно принудительно остановить загрузку страницы, в этом нам поможет: @@Private Sub Command2_Click() ' стоп WebBrowser1.Stop End Sub@@

Тоесть опять создаём на форме кнопку(button) и вбиваем этот код. В случае если нужно знать когда страница на 100% загружена, нужно написать следующее: @@Private Sub WebBrowser1_DocumentComplete(ByVal pDisp As Object, URL As Variant) MsgBox "Загрузка оконченна" End Sub@@

Для удобства разместите внизу на форме Label, в котором будет отоброжаться состояние браузера и замените MsgBox "Загрузка оконченна" на Label1.Caption "Загрузка оконченна"

Используя метод LocationName можно отображать название текущего сайта в заголовке браузера: @@Private Sub WebBrowser1_DownloadComplete() Form1.Caption = WebBrowser1.LocationName End Sub@@

Ну и конечноже как и в любом другом браузере довайте разместим ещё 4 кнопки *Назад*, *Вперед*, *Обновить*, *Домой*. В Caption для удобства напишите соответственно для каждой кнопки свой заголовок, тобиш текст который будет отоброжаться на кнопке. Вбиваем код: @@Private Sub Command3_Click() On Error Resume Next WebBrowser1.GoBack ' Назад End Sub

Private Sub Command4_Click() On Error Resume Next WebBrowser1.GoForvard ' Вперёд End Sub

Private Sub Command5_Click() WebBrowser1.Refresh ' Обновить End Sub

Private Sub Command6_Click() On Error Resume Next WebBrowser1.GoHome ' Перейти на домашнюю страничку End Sub@@

Если хотите сделать прогресс бар, не проблема, можно его добавить. Лежит он в компоненте Microsoft Windows Common controls. И пишем такой код: @@Private Sub WebBrowser1_ProgressChange(ByVal Progress As Long, ByVal ProgressMax As Long) On Error Resume Next

   If Progress = -1 Then ProgressBar1.Value = 100 'the name of the progress bar is "ProgressBar1".
       ProgressBar1.Visible = False 'This makes the progress bar disappear after the page is loaded.
   If Progress > 0 And ProgressMax > 0 Then
       ProgressBar1.Visible = True
       ProgressBar1.Value = Progress * 100 / ProgressMax
   End If
   Exit Sub

End Sub@@

Еще две важных вещи: сохранение страницы и авторазмер с скрытием ошибок по javascript: @@Private Sub Command9_Click()'Сохранение страницы WebBrowser1.ExecWB OLECMDID_SAVEAS, OLECMDEXECOPT_DODEFAULT End Sub@@

Ну и естественно добавте оптимизатор: @@Private Sub Form_Resize() On Error Resume Next WebBrowser1.Width = Me.ScaleWidth WebBrowser1.Height = Me.ScaleHeight - 1680 WebBrowser1.Silent = True End Sub@@