+ -
当前位置:首页 → 问答吧 → 得到HTMLView的源文件,如何做修改 ,然后再显示出来?

得到HTMLView的源文件,如何做修改 ,然后再显示出来?

时间:2011-11-24

来源:互联网

IHTMLDocument3 * pDoc;
IDispatch * idisp = this->GetHtmlDocument();
HRESULT hr = idisp->QueryInterface(IID_IHTMLDocument3, (void **)&pDoc);

idisp->Release();

CComPtr <IHTMLElement> rootElement;
FAILED(pDoc->get_documentElement(&rootElement));


pDoc->Release();

CComQIPtr <IHTMLDOMNode> rootNode = rootElement ;

CComQIPtr<IDispatch> spCollectionDispatch; 
rootNode->get_childNodes( & spCollectionDispatch ) ;


long numChildren = 0; 
CComQIPtr<IHTMLDOMChildrenCollection> spCollection = spCollectionDispatch; 
spCollection->get_length( & numChildren); //只有1个孩子节点,纳闷。
for ( long i = 0; i < numChildren; i++) { 
CComPtr<IDispatch> spItemDispatch; 
spCollection->item( i , &spItemDispatch); 
CComQIPtr<IHTMLDOMNode> spItemNode = spItemDispatch; 
CComQIPtr<IHTMLDOMNode> spnextItemNode; 

_bstr_t nodeName;
BSTR bstrNodeName;
spItemNode->get_nodeName(&bstrNodeName);
spItemNode->get_firstChild(&spnextItemNode);
CComQIPtr <IHTMLElement> childelem = spnextItemNode ;
long value;
childelem->get_offsetWidth(&value);//得到该标签的宽属性
BSTR str =(BSTR)("width");


nodeName = bstrNodeName;
VARIANT vValue; 
spnextItemNode->get_nodeName(&bstrNodeName);

long j;
spnextItemNode->get_nodeType(&j);
}

作者: gbchqc   发布时间: 2011-11-24

哪位大侠帮帮忙呀?实在不会IHTMLDOCUMENT这个接口,对MFC也不是很熟悉。

作者: gbchqc   发布时间: 2011-11-24

自己研究了~~还是自己靠得住呀~~

作者: gbchqc   发布时间: 2011-11-24

^_^,gxgx

作者: oyljerry   发布时间: 2011-11-24