WebBrowser控件判断页面加载完毕

大家都知道DWebBrowserEvents2 Members的DocumentComplete(Fires when a document is completely loaded and initialized)成员的作用。但是实际上直接在它里面处理加载完成后的事件是不行的, 我们还需要做一些处理才行。直接看代码:

//CComPtr m_spWebBrowser; void __stdcall OnEventDocumentComplete(IDispatch* /*pDisp*/, VARIANT* /*URL*/) { ATLASSERT(m_spWebBrowser != NULL); IDispatch *p_disp = NULL; m_spWebBrowser->get_Document(&p_disp); if (p_disp) { ATL::CComQIPtr spDoc2 = p_disp; BSTR bs_readyState; spDoc2->get_readyState(&bs_readyState); CString str; str.Format(_T("%s"), bs_readyState); if (str.Compare(_T("complete")) == 0) { // 这里才是处理页面最终加载完成的地方 } } }




    推荐阅读