Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.09.22;
Скачать: CL | DM;

Вниз

Проверка откр. / закр. тага в таблицах HTML...   Найти похожие ветки 

 
Razorblade   (2003-09-08 09:18) [0]

Народ! Если кто нибуди писал нечто подобное или (даже желательно)
сторил дерево тагов HTML документа в TreeView. Отзовитесть! Плз.
Критично по времени!


 
nikkie ©   (2003-09-08 10:32) [1]

MSHTML
создаешь HTML document с помощью CoCreateInstance, инициализируешь через IPersistStreamInit, загружаешь в него данные через IHTMLElement::put_innerHTML. код на c++:
HRESULT hr = CoCreateInstance(CLSID_HTMLDocument, NULL,
CLSCTX_INPROC_SERVER, IID_IHTMLDocument2, (void **)&spHTMLDocument);
_ASSERT(SUCCEEDED(hr));

CComPtr<IPersistStreamInit> spPSI;
hr = spHTMLDocument->QueryInterface(IID_IPersistStreamInit, (void**)&spPSI);
_ASSERT(SUCCEEDED(hr));
hr = spPSI->InitNew();
_ASSERT(SUCCEEDED(hr));
spPSI = NULL;

CComPtr<IHTMLElement> spHTMLElement;
hr = spHTMLDocument->get_body(&spHTMLElement);
_ASSERT(SUCCEEDED(hr));

hr = spHTMLElement->put_innerHTML(HTML);
_ASSERT(SUCCEEDED(hr));

далее делаешь рекурсивный перебор детей у IHTMLElement


 
Razorblade   (2003-09-08 11:25) [2]

Не могу определить CLSID_HTMLDocument. Как? (не силён я в COM).


 
nikkie ©   (2003-09-08 11:30) [3]

uses MSHTML
CLASS_HTMLDocument


 
Razorblade   (2003-09-08 16:24) [4]

spHTMLDocument, spPSI - какой класс?


 
nikkie ©   (2003-09-08 22:30) [5]

там же все написано.
var
HTMLDocument: IHTMLDocument;
HTMLElement: IHTMLElement;
PSI: IPersistStreamInit;
begin
CoCreateInstance(...);
PSI := HTMLDocument as IPersistStreamInit;
PSI.InitNew;
PSI := nil;
HTMLElement := HTMLDocument.body;
HTMLElement.innerHTML := HTML;
end;


 
Razorblade   (2003-09-09 10:45) [6]

Напиши пожалуйста полностью код на Delphi для загрузки HTML файла.
Если не трудно. Заранее спасибо.



Страницы: 1 вся ветка

Текущий архив: 2003.09.22;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.026 c
1-71595
Dred2k
2003-09-10 21:21
2003.09.22
Ошибка при ClientDataSet.Open - Член группы не найден


14-71846
Kost
2003-09-01 14:38
2003.09.22
StringGird


7-71974
Номолос
2003-07-11 21:19
2003.09.22
А як Paint запустить?


14-71938
Johnny Smith
2003-08-29 11:12
2003.09.22
Стимул.


8-71759
LOX
2003-05-25 11:23
2003.09.22
Звуковое сопровождение