Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

метод Navigate для TWebBrowser [D7, WinXP]


kani ©   (2005-02-18 08:39:00) 

Добрый день. Можно ли чтобы просмотреть html-код в TWebBrowser как-нибудь задавать не путь к html-страничке(т.е. URL - как это делается в методе Navigate), а непосредственно строку, содержащую HTML-код, который нужно просмотреть в браузере?


XP   (2005-02-18 12:42:00) [1]

2 kani
 Сдается, этот вопрос уже вчера задавали.
 Что, трудно поиском воспользоваться?
  http://www.delphimaster.ru/cgi-bin/forum.pl?id=1108625387&n=0

2 Timofey
 Это именно оно...


Timofey   (2005-02-18 11:34:00) [2]

Взял из какой-то статьи. Сам еще не пробовал. Но вроде то, что тебе нужно.

Как загрузить строковые данные в WebBrowser не прибегая к открытию файла

var
 v: Variant;
 HTMLDocument: IHTMLDocument2;
begin
 HTMLDocument := WebBrowser1.Document as IHTMLDocument2;
 v := VarArrayCreate([0, 0], varVariant);
 v[0] := HTMLString; // this is your html string
 HTMLDocument.Write(PSafeArray(TVarData(v).VArray));
 HTMLDocument.Close;
 ...
end;

Как загрузить HTML код непосредственно в TwebBrowser

uses
 ActiveX;
procedure WB_LoadHTML(WebBrowser: TWebBrowser; HTMLCode: string);
var
 sl: TStringList;
 ms: TMemoryStream;
begin
 WebBrowser.Navigate('about:blank');
 while WebBrowser.ReadyState < READYSTATE_INTERACTIVE do
   Application.ProcessMessages;
 if Assigned(WebBrowser.Document) then
 begin
   sl := TStringList.Create;
   try
     ms := TMemoryStream.Create;
     try
       sl.Text := HTMLCode;
       sl.SaveToStream(ms);
       ms.Seek(0, 0);
       (WebBrowser.Document as
         IPersistStreamInit).Load(TStreamAdapter.Create(ms));
     finally
       ms.Free;
     end;
   finally
     sl.Free;
   end;
 end;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
 WB_LoadHTML(WebBrowser1, 'SwissDelphiCenter');
end;


Наверх

Титульная страница Поиск, карта сайта Написать письмо