У цій статті піде мова про використання лежить в основі Internet Explorer елемента управління WebBrowser, і бібліотеки Microsoft HTML Object Library (MSHTML). Має сенс розповідати про них саме в зв'язці, так як головна функція WebBrowser - відображати HTML документи, а MSHTML описує і управляє структурою цих документів.
Області застосування
Результат використання WebBrowser для створення інтерфейсу можна оцінити на прикладі vb-програми PharmGuide надбудови Excel DataExtract
Включення елемента управління WebBrowser і бібліотеки MSHTML до складу проекту
Для підключення браузера необхідно відкрити меню Project / Components і вибрати компонент 'Microsoft Internet Controls' відповідний файлу shdocvw.dll. У VBA проектах він називається 'Oбoзpeвaтeль вeб-cтpaніц (Microsoft)'.
Якщо ви маєте намір використовувати в програмі можливості динамічного html - необхідно підключити бібліотеку MSHTML. Меню Project / References і вибрати компонент 'Microsoft HTML Object Library' відповідний файлу MSHTML.TLB.
Обидва файли входять до складу всіх версій Windows і істотних проблем з перенесенням коду бути не повинно.
Способи завантаження вмісту
Елемент управління WebBrowser призначений для відображення html документів. Існує кілька способів визначити вміст цього документа.
метод Navigate
Залежно від джерела документа використовуючи різні протоколи:
Є й інші протоколи: HTTPS, FTP, ALP, MAILTO, MK. Останній використовується в файлах довідки (chm).
Ось найпростіший приклад використання браузера.
- Створіть новий проект і збережіть його
- Створіть файл sample.htm в директорії проекту c текстом "вітання"
- Підключіть елемент управління WebBrowser, як показано вище і розмістіть його на формі
- в коді форми додати:
Private Sub Form_Load ()
WebBrowser1.Navigate App.Path "\ Sample.htm"
End Sub
Ось приклад завантаження даних з ресурсів:
Private Sub Form_Load ()
WebBrowser1.Navigate "res: //shdoclc.dll/about.dlg"
End Sub
Використання протоколу 'about'
Private Sub Form_Load ()
WebBrowser1.Navigate "about:вітання"
End Sub
Дані, що завантажуються з ресурсів повинні знаходитися в розділі 'HTML'
Існує і нестандартний спосіб завантаження сторінки при старті програми. Для цього необхідно відкрити файл frmMain.frm і знайти в розділі 'Begin SHDocVwCtl.WebBrowser WebBrowser1' рядок 'Location = ""'. Це шлях до документа, за замовчуванням. Якщо його замінити на 'Location = "about:вітання" ', То слово' привіт 'буде автоматично відображатися в браузері, навіть в режимі конструктора.
Завантаження html коду з оперативний пам'яті
Спосіб заснований на використанні динамічного html, тому до складу проекту необхідно включити бібліотеку mshtml. Для початку необхідно створити новий об'єкт Document, а потім скористатися методом Write.
Private Sub Form_Load ()
Dim mStr As String
Dim mDoc As MSHTML.IHTMLDocument
Формування html документа шляхом додавання нових елементів
Джерела інформації
Знайти ці документи можна через пошукові системи
У наступній статті мова піде про перехоплення і обробки подій в html документах.