首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在qwebkit中复制网页?

如何在qwebkit中复制网页?
EN

Stack Overflow用户
提问于 2016-08-16 14:02:39
回答 1查看 27关注 0票数 0

假设我有两个名为W1和W2的qwebview小部件,然后我用

代码语言:javascript
复制
W1->setUrl("someUrlHere");. 

这两个页面都有单独的css文件。

然后,我将使用以下命令更改w1中某些元素的背景

代码语言:javascript
复制
.setStyleProperty("background-color",qColor(255,0,0));

到目前为止一切正常,背景变成了红色。

现在,我希望将w2中的页面替换为w1 (不使用.seturl),包括w1的样式表。然后我希望能够在不影响另一个的情况下改变它们的颜色

我尝试过.toHtml().sethtml(),但这只会复制html (当然),因此w1中的所有样式都会丢失。

我也尝试了许多其他的方法,包括.setpage.clone等。但它似乎只改变了html,或者改变了指向它的指针(所以如果我对w1做了改变,它只会影响w2,并且w1不能再被触摸了,等等)。

有可能做到这一点吗?另外,有没有可能在不需要每个小部件的情况下做到这一点呢?

EN

回答 1

Stack Overflow用户

发布于 2016-08-16 14:06:01

我不知道这个线程是否仍然活跃,但是我在寻找我所面临的一个QtWebkit问题的答案时偶然发现了它。不管怎样..。

代码语言:javascript
复制
void QNAMProxy::HandleFinished( QNetworkReply* reply ) {
    if( reply->error( )) {
        // Something went wrong
    } else {
        QUrl url = reply->url( );
        //TODO Parse the URL to create your local path
        QFile file( "Parsed local file name" );
        if (!file.open(QIODevice::WriteOnly)) {
            // Some problem with creating the file to write
        } else {
            file.write( reply->readAll( ));
            file.close( );
        }
    }
}

如果要将页面另存为html

代码语言:javascript
复制
webPage->currentFrame()->toHtml() => QString

希望这能有所帮助

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38967612

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档