【问题标题】:How to apply css in internet explorer COM object?如何在 Internet Explorer COM 对象中应用 css?
【发布时间】:2015-08-13 20:53:27
【问题描述】:

我用 Qt 编写,但这没关系,因为我只想使用 COM 函数 这就是我加载 IE 的方式。

QAxWidget* axieBrowser= new QAxWidget(ui->centralWidget);
axieBrowser->setControl(QString::fromUtf8("{8856F961-340A-11D0-A96B-00C04FD705A2}"));
axieBrowser->dynamicCall("Navigate(const QString&)", "www.google.com");

现在我想将 css 应用于我从此小部件打开的所有页面。 例如:

body {
    margin:0;
    overflow:hidden;
    opacity: 0.4;
}

在 Qt 中,如果我使用 Qt Webkit,我可以使用

ui->webView->page()->settings()->setUserStyleSheetUrl(myCss);

如何使用 IE COM 做到这一点?

【问题讨论】:

    标签: c++ css internet-explorer com


    【解决方案1】:

    在 Qt 中我使用以下代码进行管理

    IDispatch* val = axieBrowser->property("Document").value<IDispatch*>();
    QAxObject * obj = new QAxObject((IUnknown*)val);
    if (obj)
    {
        QAxObject * result = obj->querySubObject("createStyleSheet(QString, int)", "", 0);
        result->setProperty("cssText", "body {  margin:0;   overflow:hidden;    opacity: 0.4;}");
    }
    

    【讨论】:

      猜你喜欢
      • 2023-03-08
      • 2014-11-19
      • 2010-10-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-06-05
      • 1970-01-01
      • 2016-04-11
      相关资源
      最近更新 更多