天天看點

Qt界面用 QAxWidget 調用IWebBrowser2顯示網頁

一個Qt項目中用到東西,在此分享一下

// 擷取ActiveX控件對象的幫助文檔
//
//        QString doc= this->m_pAxWebBrowser->generateDocumentation();
//        QFile outFile("E:\\Tools\\WebBrowser_ActiveX_Help.html");
//        outFile.open(QIODevice::WriteOnly|QIODevice::Append);
//        QTextStream ts(&outFile);
//        ts<<doc<<endl;

	this->m_pAxWebMail = new QAxWidget(ui->widget);
        this->m_pAxWebMail->setObjectName(QString::fromUtf8("WebBrowser"));
        this->m_pAxWebMail->setFocusPolicy(Qt::StrongFocus);
        this->m_pAxWebMail->setControl(tr("{8856F961-340A-11D0-A96B-00C04FD705A2}"));
        this->m_pAxWebMail->setProperty("DisplayScrollBars", true); // 顯示滾動條

        IWebBrowser2 *webBrowser = 0;
        this->m_pAxWebMail->queryInterface(IID_IWebBrowser2, (void **)&webBrowser);

        // 禁止彈出錯誤框
        //
        if(webBrowser)
        {
            VARIANT_BOOL bValue = true;
            webBrowser->put_Silent(bValue);
            webBrowser->Release();
        }

 
	QString strUrl = "http://www.baidu.com";
	this->m_pAxWebMail->dynamicCall("Navigate(const QString&)", strUrl); // 打開網站