首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >QTWebview不从css加载图像

QTWebview不从css加载图像
EN

Stack Overflow用户
提问于 2013-03-22 00:28:41
回答 2查看 1.8K关注 0票数 2

我在一个窗口应用程序中使用QTWebview。当我通过setHtml函数加载页面时,我的web视图有时不加载内容图像。

在加载多个页面后,尤其会出现此问题。

我确信这是QTWebview的问题,因为我的页面完全是在浏览器中加载的。

我已经嵌入了Fire bug,并且发现了一些东西。QTWebview实际上并不加载新的css文件。例如,我有2个css文件。首先,我将第一个文件复制到stylesheet文件夹并加载网页。然后,我将第二个文件复制到样式表中,并强制重新加载webview。什么事都没发生。fire bug中的所有css项都与第一个相同,外观没有变化。我认为QTWebview会自动缓存数据以便重新加载,但可以找到任何解决方案。有没有人像我一样有同样的问题?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-03-25 11:48:13

我终于找到了这个问题的解决方案。因为我总是加载相同URL并且只更改样式表,所以QWebview自动使用它的缓存数据。我修复了它,在重新加载之前添加了QWebSettings::clearMemoryCaches();

票数 3
EN

Stack Overflow用户

发布于 2013-03-22 22:47:14

这些东西是用来在本地内容中使用QWebView的,可能对于Web也是一样的,如果你想加载CSS文件,你必须把它放在HTML文件中,然后在QWebView中加载HTML文件,你可以把你的HTML文件嵌入到resource file (.qrc)中,然后通过添加前缀qrc从资源中加载它,下面是一个例子:

在addresses.h .h文件中:

代码语言:javascript
复制
const QString MAIN_HTML = "qrc:/path-to-your-HTML-file-in-resource-file.html";    

在MainWindow.cpp中:

代码语言:javascript
复制
QWebView *webView = new QWebView();
webView->settings()->setAttribute(QWebSettings::LocalContentCanAccessRemoteUrls, true);
webView->page()->settings()->setAttribute(QWebSettings::JavascriptEnabled, true);
webView->page()->settings()->setAttribute(QWebSettings::OfflineWebApplicationCacheEnabled, true);
webView->page()->setLinkDelegationPolicy(QWebPage::DelegateAllLinks);
webView->settings()->setUserStyleSheetUrl(QUrl("qrc:/path-your-css-file-in-resource-file.css"));

最后加载HTML文件:

代码语言:javascript
复制
webView->load(QUrl(MAIN_HTML)); // remember to include header file -> #include "addresses.h"

如果要从本地硬盘加载文件,只需从地址中删除qrc即可使用QUrl

代码语言:javascript
复制
 QUrl::fromLocalFile(":/path-to-your-css-file.css"); 

在HTML文件中(如果它位于资源文件中):

代码语言:javascript
复制
<link type="text/css" rel="stylesheet" href="qrc:/path-to-your-css-file-in-resource-file.css"/>

在您的HTML文件中(如果它位于本地硬盘):

代码语言:javascript
复制
<link type="text/css" rel="stylesheet" href="/path-to-your-css-file.css"/>

因此最好将所有文件嵌入到一个资源文件中,它将被编译并嵌入到输出可执行文件中。

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

https://stackoverflow.com/questions/15553018

复制
相关文章

相似问题

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