тільки корисні матеріали
Головний акціонер 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 Та й незабутній підписуватися на розсилку.