PyQt4 и QtWebKit - как автоматически прокрутить вид? - PullRequest
0 голосов
/ 27 марта 2009

Я получил виджет QtWebKit.QWebView в окне приложения PyQt, которое я использую для отображения текста и прочего для приложения, похожего на чат.

    self.mainWindow = QtWebKit.QWebView()
    self.mainWindow.setHtml(self._html)

Когда разговор становится длиннее, появляется вертикальная полоса прокрутки.

То, что я хотел бы получить, это прокрутить отображаемый вид вниз, когда это необходимо. Как мне это сделать? Или, может быть, я не должен использовать QWebView виджет для этого?

Ответы [ 3 ]

3 голосов
/ 24 апреля 2009

Для (Py) Qt 4.5 используйте позицию прокрутки кадра, например, self._html.page (). мэйнфрейм (). setScrollPosition. Смотрите QWebFrame :: setScrollPosition () function ..

1 голос
/ 27 марта 2009

кендер - QWebView состоит из QWebPage и QWebFrame. Свойства полосы прокрутки хранятся в QWebFrame, который имеет метод setScrollBarValue (), а также метод scrollBarMaximum () для возврата максимальной позиции.

Смотрите эти ссылки для деталей: QWebView , QWebFrame

0 голосов
/ 05 апреля 2015

Возможно, JavaScript - самый простой способ, но вы также можете использовать evaluateJavaScript функцию QWebView:

self.page().mainFrame().evaluateJavaScript("window.scrollTo(0, "+str(self.init_ypos)+");")

, где self - это класс Browser(QWebView) (self.mainWindow для вас).

...