我正在将我的代码从QT5.5升级到QT5.6,但我没有找到一种方法来移植以下代码:
QWebEngineView *qwebview = new QWebEngineView(this);
qwebview->settings()->setUserStyleSheetUrl(QUrl("qrc:/about.css"));
qwebview->setHtml(fileContentStr);使用新的Qt引擎插入用户CSS的最佳方法是什么?
发布于 2016-04-08 08:00:25
如果您在这里阅读:关于QWebEngine的错误报告,您将看到:
将CSS代码注入WebEngineView的唯一机会是使用JavaScript。如果有一个合适的API来解决这个问题,那就太好了,而且它看起来就像我们已经存在的UserScripts API一样。
看起来很清楚:--您不能再使用WebSettings来插入CSS了。,您必须使用WebSettings/JavaScript才能这样做。
我不知道这是否对你有帮助,但这是我所做的事情的摘录。
在我的.cpp:
m_pView = new QWebEngineView(this);
QUrl startURL = QUrl("path/to/index.html");
m_pView->setUrl(startURL);在index.html中:
<html>
<head>
<title>TITLE</title>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<!-- Many JS scripts here -->
<link href="./css/style.css" rel="stylesheet">
</head>
<body ng-app="myApp" >
<div ui-view class="page"></div>
</body>
</html>希望这能有所帮助。
https://stackoverflow.com/questions/36483006
复制相似问题