我将代码从Qt 5.5升级到Qt 5.6,但是找不到移植以下代码的方法:
QWebEngineView *qwebview = new QWebEngineView(this);
qwebview->settings()->setUserStyleSheetUrl(QUrl("qrc:/about.css"));
qwebview->setHtml(fileContentStr);
使用新的Qt Web Engine插入用户CSS的最佳方法是什么?
最佳答案
如果您在这里阅读:Bug Report on QWebEngine,将会看到:
似乎很清楚:,您不能再使用WebSettings插入CSS。 相反,您将必须使用HTML/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>
希望能有所帮助。
关于c++ - QWebView::settings()-> setUserStyleSheetUrl()从QtWebKit到QtWebEngine吗?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/36483006/