Delphirus - прграммирование на delphi
   Все о delphi Delphirus - прграммирование на delphi
blocks.gif
Навигация
 

Главная
Статьи
Базы данных
Графика
Защита
Интернет
Система
Тексты
Мультимедиа
Файлы
Формы и окна
Другое
Советы
Базы данных
Графика
Интернет
Мультимедиа
Система
Тексты
Файлы
Файлы
Исходники
Компоненты
Инфо
Поиск по сайту
Обратная связь
Самое популярное
Аккаунт
Карта сайта

 
 
 

Советы по delphi \ Интернет и сети \ Браузер \ Вставка текста (программно сгенерированной HTML-страницы) в TWebBrowser (не из файла, а из текстовой переменной)

Вставка текста (программно сгенерированной HTML-страницы) в TWebBrowser (не из файла, а из текстовой переменной)

{ **** UBPFD *********** by delphibase.endimus.com ****
>> Вставка текста (программно сгенерированной HTML-страницы) в TWebBrowser
(не из файла, а из текстовой переменной)

Функция позволяет отображать любой текст в TWebBrowser или TWebBrowser_V1.
С ее помощью можно обойтись без html-файлов и отображать html-странички,
генерируя их программно. Обрабатывая клики в таких страничках можно быстро
и просто создавать интерфейс приложения в формате HTML.
Для работы функции обязателен установленный в системе Internet Explorer.
Здесь я использую веббраузер старой версии - TWebBrowser_V1, при необходимости
можно заменить его на TWebBrowser (просто переписать тип входной переменной WB),
Но при этом программа с этой функцией будет работать только на системах
с IE версии 5.0 и выше, в то время как TWebBrowser_V1 обеспечивает работу
начиная с версии 4.0.

Зависимости: ActiveX, SHDocVw, MSHTML, Forms, установленный Internet Explorer
Автор:       lipskiy, lipskiy@mail.ru, ICQ:51219290, Санкт-Петербург
Copyright:   Взято из FAQ и оптимизировано lipskiy и Donal_Graeme
Дата:        14 августа 2002 г.
***************************************************** }

procedure TextToWebBrowser(Text: string; var WB: TWebBrowser_V1);
var
  Document: IHTMLDocument2;
  V: OleVariant;
begin
  // Документ необходимо создать только один раз за текущую сессию работы
  if WB.Document = nil then
    WB.Navigate('about:blank');
  // Ожидаем создания документа и позволяем обрабатывать все сообщения
  while WB.Document = nil do
    Application.ProcessMessages;
  Document := WB.Document as IHtmlDocument2;
  // Вставляем текст (до 2Гб)
  {следующие строчки внесены недавно - старый вариант функции не работал под XP}
  V := VarArrayCreate([0, 0], varVariant);
  V[0] := Text;
  Document.Write(PSafeArray(TVarData(v).VArray));
  Document.Close;
end;

Название: Вставка текста (программно сгенерированной HTML-страницы) в TWebBrowser (не из файла, а из текстовой переменной)
Дата публикации: 2004-09-02 (3030 Прочтено)

 
 

 

Page generation 0.031 seconds