Зберегти исходник html з twebbrowser

тільки корисні матеріали

Головний акціонер Alibaba став найбагатшою людиною в Китаї
статті

Microsoft почала закрите тестування Office 16
статті

Фахівці знайшли діри в безпеці Windows 8.1
статті

У московському метро з'явиться єдина мобільна мережа
статті

eBay буде приймати Bitcoin
статті

Vivitek представила «шкільний» проектор D755WTIR
статті

У Твіттері з'явилася кнопка «Купити»
статті

«Яндекс.Новини» тепер можна переглядати і на iPhone
статті

Сьогодні ми навчимося зберігати исходник HTML з TWebBrowser.Document на диск. Робиться це дуже просто і я думаю труднощів з цим у вас виникнути неповинно.

Ну що поїхали, як завжди для початку відкриваємо Delphi і перше що нам потрібно буде зробити це дописати в розділ uses ActiveX. Рухаємося далі тепер кидаємо на форму дві кнопочки (button) з закладки standart, компонент SaveDialog з закладки Dialog і компонент webBrowser з закладки internet. Так з компонентами ніби розібралися

Створюємо обробник подій (onclick) на першій кнопці і в ньому прописуємо наступний код:

Так тепер переходимо на самий верх і відразу ж після public пишемо:

procedure SaveHTMLSourceToFile (const FileName: string; WB: TWebBrowser);

Натискаємо комбінацію клавіш Ctrl + Shift + C

І Delphi автоматично генерує процедуру, вийти повинно приблизно так:

procedure TForm1.SaveHTMLSourceToFile (const FileName: string;
WB: TWebBrowser);
begin

Зараз давайте пропишемо дії, які буде виконувати дана процедура, а саме вона повинна зберігати поточний відкритий в компоненті webbrowser документ у вигляді исходника HTML

procedure TForm1.SaveHTMLSourceToFile (const FileName: string;
WB: TWebBrowser);
var
PersistStream: IPersistStreamInit;
FileStream: TFileStream;
Stream: IStream;
SaveResult: HRESULT;
begin
PersistStream: = WB.Document as IPersistStreamInit;
FileStream: = TFileStream.Create (FileName, fmCreate);
try
Stream: = TStreamAdapter.Create (FileStream, soReference) as IStream;
SaveResult: = PersistStream.Save (Stream, True);
if FAILED (SaveResult) then
MessageBox (Handle, 'Fail to save HTML source', 'Error', 0);
finally
FileStream.Free;
end;
end;

Ось практично і все залишилося тільки створити обробник подій (onClick) на другій кнопці і прописати там:

if SaveDialog1.Execute then
SaveHTMLSourceToFile (SaveDialog1.FileName, WebBrowser1);

Запускаємо програму, тиснемо спочатку на першу кнопку, чекаємо поки в компоненті WebBrowser завантажитися сторінка.

Тепер натискаємо на другу кнопку і зберігаємо завантажену сторінку, в Поле Файл: вводимо наприклад delphi.txt або expert.html

На цьому все, до зустрічі Delphi Expert.ru

P.S Та й незабутній підписуватися на розсилку.

Схожі статті