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

Материал из GedeminWiki
(Различия между версиями)
Перейти к: навигация, поиск
 
(не показана 1 промежуточная версия 1 участника)
Строка 9: Строка 9:
 
Option Explicit
 
Option Explicit
 
Sub usrg_BtnOnClick(ByVal Sender)
 
Sub usrg_BtnOnClick(ByVal Sender)
 +
 +
  Const READYSTATE_COMPLETE = 4
  
 
   Dim WB, Doc
 
   Dim WB, Doc
 
   Set WB = Sender.OwnerForm.GetComponent("usrg_WB")
 
   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 Doc = WB.Document
 
    
 
    
Строка 21: Строка 29:
  
 
По нажатию на кнопку в поле веб браузера отобразится фраза "Привет из Гедымина!" и загрузится изображение с сайта компании Golden Software.
 
По нажатию на кнопку в поле веб браузера отобразится фраза "Привет из Гедымина!" и загрузится изображение с сайта компании Golden Software.
 +
 +
Обратите внимание, что через свойство Body мы получаем доступ только к тегу BODY документа. Для определения своих стилей необходимо использовать метод CreateStyleSheet как показано на примере ниже.
 +
 +
<syntaxhighlight lang="vbnet">
 +
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
 +
</syntaxhighlight>
  
 
====См. также====
 
====См. также====

Текущая версия на 15:55, 12 декабря 2011

Для отображения 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

[править] См. также

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

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