首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ Builder >

CppWebBrowser 操作DIV里的内容.,该如何解决

2013-01-12 
CppWebBrowser 操作DIV里的内容.我想把DIV里的内容替换掉,但是下面的这段程序遍历不到 DIV,只能遍历到页面

CppWebBrowser 操作DIV里的内容.
我想把DIV里的内容替换掉,但是下面的这段程序遍历不到 DIV,只能遍历到页面控件,怎么解决呢.


if(SUCCEEDED(spDispatch->QueryInterface(IID_IHTMLElement,(void**)&pElement)))
{
BSTR text1;
pElement->get_id(&text1)
ShowMessage(text1);

[解决办法]

修改一下,应该就可以用了。
//---------------------------------------
void __fastcall GetHtmlSource(LPDISPATCH WebDoc,AnsiString &strHtmlSource)
{
//TODO:取得WebDoc中的所有的源代码。

   IDispatch *pDispatch=NULL;   
   IHTMLDocument3 *pDocument3=NULL;   
   IHTMLElementCollection *pElementCollection=NULL;   
   IHTMLElement *pElement=NULL;   
  
   if(SUCCEEDED(WebDoc->QueryInterface(IID_IHTMLDocument3, (LPVOID*)&pDocument3)))   
   {
  if(SUCCEEDED(pDocument3->getElementsByTagName(L"HTML", &pElementCollection)))
      {   
 Variant varName;
         Variant varIndex=0;   
         if(SUCCEEDED(pElementCollection->item(varName, varIndex, &pDispatch)))   
         {   
            if(SUCCEEDED(pDispatch->QueryInterface(IID_IHTMLElement, (LPVOID*)&pElement)))   
            {   
               BSTR bstrHTML;   
               pElement->get_outerHTML(&bstrHTML);   
               Variant varHTML=bstrHTML;   
   strHtmlSource = VarToStr(varHTML);
               SysFreeString(bstrHTML);   
               pElement->Release();   
            }   
            pDispatch->Release();   
         }   
         pElementCollection->Release();   
      }   
      pDocument3->Release();   
   }
}
//---------------------------------------

热点排行