我想这应该是一个简单的任务:更改QWebView的内容(它总是包含几页内容)然后在之前的位置向后滚动页面:
y = self.webView.page().mainFrame().scrollPosition().y()
self.webView.setHtml(looong_html_text)
if y != 0:
self.webView.scroll(0, y)
self.webView.page().mainFrame().scroll(0, y)
self.webView.page().mainFrame().setScrollPosition(QPoint(0, y))
print(self.webView.page().mainFrame().scrollPosition().y())
但if中的3个命令完全没用:页面滚动回到顶部。 怎么了?
答案 0 :(得分:2)
答案 1 :(得分:1)
使用此代码
ui->webView->page()->mainFrame()->scroll(ui->webView->page()->mainFrame()->contentsSize().width(), ui->webView->page()->mainFrame()->contentsSize().height());