请教IWebBrowser2控件在网页有多个frame时的DocumnetComplete事件

hou2003 2005-07-18 05:52:48
如何判断主frame文档下载完成时激发的DocumnetComplete事件。就是打开一个网页的时候最后一个DocumnetComplete事件。我再网上也看到一个例子,不过有个地方有错误,大家看看:
void CSimpleWebBrowserView::OnComplete(LPDISPATCH pDisp, VARIANT* URL)
{
HRESULT hr;
IUnknown* pUnkBrowser = NULL;
IUnknown* pUnkDisp = NULL;
// 这个 DocumentComplete 事件是否是顶层框架窗口的?
// 检查 COM 标识: 比较IUnknown 接口指针.
hr = m_pbBrowser->GetDocument()->QueryInterface( IID_IUnknown, (void**) &pUnkBrowser );
if ( SUCCEEDED(hr) )
{
hr = pDisp->QueryInterface( IID_IUnknown, (void**)&pUnkDisp );
if ( SUCCEEDED(hr) )
{
if ( pUnkBrowser == pUnkDisp )
{
AfxMessageBox("Complete!");
// 这是顶层框架窗口的DocumentComplete 事件 —— 页面 载入完成!
// 建立一个包含HTML内容的流
// 另外, 这个流可以是被传递过来的(而不是被创建的)
}
pUnkDisp->Release();
}
pUnkBrowser->Release();
}
}


我的程序中m_pBrowser是一个CWebBrowser2(就是在VC中引入ie控件后自动生成的类)的指针,
不能调用QueryInterface函数。也就是m_pBrowser-〉QueryInterface()出错。那位大虾看看怎么解决呢?
...全文
65 点赞 收藏 2
写回复
2 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
hou2003 2005-07-19
谢谢,基本上解决了,不过我打开www.163.com网页的时候,怎么还是会三次弹出“complete”消息框。是不是有一些flash图片的问题?
回复
goodboyws 2005-07-18
m_pBrowser->GetControlUnknown()->QueryInterface
回复
发帖
网络编程
创建于2007-09-28

1.8w+

社区成员

VC/MFC 网络编程
申请成为版主
帖子事件
创建了帖子
2005-07-18 05:52
社区公告
暂无公告