5

我需要一点帮助。

我有这个 QTextBrowser,我将所有标准输出重定向到它。

self.console_window = QtGui.QTextBrowser()
self.console_window.setReadOnly(True)

我现在需要的是自动滚动到底部,这样我就可以看到正在发生的事情,而无需手动滚动到底部。

我试过这个

 scrollBar = self.console_window.verticalScrollBar()
 scrollBar.setValue(scrollBar.maximum())

但不工作。

有什么想法吗?

固定的!!!

def handleOutput(self, text, stdout):
        self.console_window.moveCursor(QtGui.QTextCursor.End)
        self.console_window.ensureCursorVisible()
        self.console_window.insertPlainText(text)


    def Console_Window(self):
        self.console_window = QtGui.QTextEdit()
        self.console_window.setReadOnly(True)
4

1 回答 1

1

只是 Pyqt5 中的一个快速更新。

我做的有点不同,因为我已经看到需要延迟:

            self.scrollbar = self.log_output.verticalScrollBar() #the self.scrollbar is the same as your self.console_window

            try:
                time.sleep(0.1) #needed for the refresh
                self.scrollbar.setValue(10000) #try input different high value

            except:
                pass #when it is not available
于 2019-07-07T15:02:15.627 回答