您的位置:首页 > 其它

通过IWebBrowser2的Navigate2来打开网页,怎样判断网页是否全部加载完毕

2013-11-05 16:12 295 查看
1)READYSTATE r;

HRESULT hr = IWebBrowser2::get_ReadyState(&r);

if (SUCCEEDED(hr) && r == READYSTATE_COMPLETE) {

...

}

2)if (SUCCEEDED(IWebBrowser2::Stop()) {

...

}

-------------------------

Navigate2后,可以查询组建状态,查询所使用的方法就是get_ReadyState。

如果READYSTATE等于READYSTATE_COMPLETE,就说明Navigate2所请求的数据已经DOWNLOAD完成了。

另外,还有个可以实时监控网页是否打开完毕的方法,准确说是IWebBrowser2的触发事件,原型:

BEGIN_EVENTSINK_MAP(MainDlg, CDialog)

ON_EVENT(MainDlg, IDC_EXPLORER1, 259, MainDlg::DocumentCompleteExplorer1, VTS_DISPATCH VTS_PVARIANT)

END_EVENTSINK_MAP()

void MainDlg::DocumentCompleteExplorer1(LPDISPATCH pDisp, VARIANT* URL)

{

//捕捉到网页完全下载/打开成功事件

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: