DUILIB中使用IE

1.xml中配置<ActiveX name="ie" clsid="{8856F961-340A-11D0-A96B-00C04FD705A2}" delaycreate="false"/>

2.代码中实现:

CActiveXUI* pActiveXUI = static_cast<CActiveXUI*>(m_pm.FindControl(_T("ie")));
if( pActiveXUI )
 {
    IWebBrowser2* pWebBrowser = NULL;
    pActiveXUI->GetControl(IID_IWebBrowser2, (void**)&pWebBrowser);
    if( pWebBrowser != NULL )
    {
     pWebBrowser->Navigate(L"http://www.duilib.com",NULL,NULL,NULL,NULL); 
     pWebBrowser->Release();
    }

  }


CWebBrowserUI 使用

1.XML配置<WebBrowser name="ie" clsid="{8856F961-340A-11D0-A96B-00C04FD705A2}" delaycreate="false"/>

2.创建CWebBrowserEventHandler* m_pWebBrowserEventHandler对象

3.如果不需要滚动条则需要在virtual HRESULT STDMETHODCALLTYPE GetHostInfo(/* [out][in] */ DOCHOSTUIINFO __RPC_FAR *pInfo)中设置pInfo->dwFlags |= DOCHOSTUIFLAG_SCROLL_NO | DOCHOSTUIFLAG_NO3DBORDER;

4.如果不想要菜单则在virtual HRESULT STDMETHODCALLTYPE ShowContextMenu(
/* [in] */ DWORD dwID,
/* [in] */ POINT __RPC_FAR *ppt,
/* [in] */ IUnknown __RPC_FAR *pcmdtReserved,
/* [in] */ IDispatch __RPC_FAR *pdispReserved)
返回S_OK,如果想要显示菜单则返回S_FALSE

5.打开页面

CWebBrowserUI  * pWebBrowserUI = static_cast<CWebBrowserUI *>(m_pm.FindControl(_T("ie")));
 pWebBrowserUI ->SetWebBrowserEventHandler(m_pWebBrowserEventHandler);

if(  pWebBrowserUI != NULL )  {
      pWebBrowserUI ->Navigate2(_T("http://www.duilib.com")); 
 }

发布了16 篇原创文章 · 获赞 4 · 访问量 2万+
展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 大白 设计师: CSDN官方博客

分享到微信朋友圈

×

扫一扫,手机浏览