TWebBrowser загрузка из потока.

Дата публикации

В статье речь пойдет о том, как сохранить текстовую информацию в поток, а после загрузить её в компонент TWebBrowser.

 Как всегда материал мы будем изучать на практике. Создайте новый проект. На главной форме разместите следующие компоненты:

  1. TWebBrowser и назовите его WB
  2. TButton с названием BStart
  3. TMemo - MText

Выглядеть это будет примерно так:

Zagruzit TwebBrowser is potoka

 

По нажатию кнопки текст содержащийся в TMemo мы будем сохранять в поток, и тут же загружать в TWebBrowser. Очень важно в самом начале и всего один раз сделать следующее действие:

procedure TFWeb.FormCreate(Sender: TObject);
begin
    WB.Navigate('about:blank');
end;

Очень важно это сделать и главное один раз, у меня в примере этот код назначен на создание формы.

Для загрузки данных из потока в TWebBrowser напишем небольшую функцию:

function LoadFromStream(const AStream: TStream): HRESULT;
begin
    AStream.seek(0, 0);
    Result := (FWeb.WB.Document as IPersistStreamInit)
    .Load(TStreamAdapter.Create(AStream));
end;

 

Теперь посмотрим, что происходит непосредственно по нажатию:

procedure TFWeb.BStartClick(Sender: TObject);
var
    Potok: TMemoryStream;
begin
    Potok := TMemoryStream.Create; // Создаем поток
    MText.Lines.SaveToStream(Potok); // Сохраняем текст в поток
    LoadFromStream(Potok);// Загружаем поток в TWebBrowser
    Potok.Destroy;
end;

Добавить комментарий



Обновить

Monday the 23rd. icq 486350790
Copyright 2012

©