Отображение HTML на экранной форме

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

Для отображения HTML странички следует воспользоваться компонентом TWebBrowser. Создадим чистую форму и расположем на ней два компонента:

  1. usrg_WB типа TWebBrowser
  2. usrg_Btn типа TButton

Напишем обработчик события OnClick для кнопки usrg_Btn:

Option Explicit
Sub usrg_BtnOnClick(ByVal Sender)
 
  Const READYSTATE_COMPLETE = 4
 
  Dim WB, Doc
  Set WB = Sender.OwnerForm.GetComponent("usrg_WB")
 
  WB.Navigate "about:blank", null, null, null, null
  While WB.ReadyState < READYSTATE_COMPLETE
    Application.ProcessMessages
  WEnd
 
  Set Doc = WB.Document
 
  Doc.Body.InnerHTML = _
    "<h1>Привет из Гедымина!</h1><p/><img src=""http://gsbelarus.com/gs/images/gs/2007/d6.jpg"" width=""200"" />"
 
End Sub

По нажатию на кнопку в поле веб браузера отобразится фраза "Привет из Гедымина!" и загрузится изображение с сайта компании Golden Software.

Обратите внимание, что через свойство Body мы получаем доступ только к тегу BODY документа. Для определения своих стилей необходимо использовать метод CreateStyleSheet как показано на примере ниже.

Option Explicit
Sub usrg_BtnOnClick(ByVal Sender)
 
  Const READYSTATE_COMPLETE = 4
 
  Dim WB, Doc, SS
  Set WB = Sender.OwnerForm.GetComponent("usrg_WB")
 
  WB.Navigate "about:blank", null, null, null, null
  While WB.ReadyState < READYSTATE_COMPLETE
    Application.ProcessMessages
  WEnd
 
  Set Doc = WB.Document
 
  Set SS = Doc.CreateStyleSheet("", 0)
  SS.cssText = "body {background-color:#d0e4fe;}"  
 
  Doc.Body.InnerHTML = _
    "<h1>Привет из Гедымина!</h1><p/><img src=""http://gsbelarus.com/gs/images/gs/2007/d6.jpg"" width=""200"" />"
 
End Sub

См. также

Персональные инструменты
Пространства имён

Варианты
Действия
Навигация
Инструменты