如何取得网页上被选定的文字,像划词那样,最好有实例,DELHPI

解决方案 »

  1.   

    delphi没有,C++BUILDER的有。
    前提:是程序内的webbrowser和已经装载完毕。void __fastcall TForm::SelBtnClick(TObject *Sender)
    {
        //TODO:所选文字为标题
        IHTMLDocument2* pDocument ;
        IHTMLSelectionObject *SelectObj;
        IHTMLTxtRange *TextRang;
        HRESULT hr ;
        HWND EditFormHanle=NULL;    //获得IHTMLDocument2接口
        hr = CppWebBrowser1->Document->QueryInterface(IID_IHTMLDocument2,(void**)&pDocument) ;    if(SUCCEEDED(hr) )
        {
            pDocument->get_selection(&SelectObj);
            pDocument->Release() ;
            IDispatch* pDisp ;
            wchar_t *TxtSrc;
            SelectObj->createRange(&pDisp);
            hr= pDisp->QueryInterface(IID_IHTMLTxtRange,(void**)&TextRang) ;
            if(SUCCEEDED(hr) )
            {
                TextRang->get_text(&TxtSrc);
                m_SelText=AnsiString(TxtSrc).Trim();        }//end of if
        }//end of if
    }
    //---------------------------------------------------------------------------
      

  2.   

    http://borland.mblogger.cn/jinjazz/posts/23857.aspx