[pyqt] A saída do console é exibida na interface

cada blog cada lema: Você pode fazer mais do que pensa.
https://blog.csdn.net/weixin_39190382?type=blog

0. Prefácio

A interface pyqt exibe a saída do console

1. Texto

class Signal(QObject):

    text_update = pyqtSignal(str)

    def write(self, text):
        self.text_update.emit(str(text))
        # loop = QEventLoop()
        # QTimer.singleShot(100, loop.quit)
        # loop.exec_()
        QApplication.processEvents()


class Mainworkwindow(QMainWindow, Ui_MainWindow):
    def __init__(self):
        super().__init__()
        self.setupUi(self)
 
        # 实时显示输出, 将控制台的输出重定向到界面中
        sys.stdout = Signal()
        sys.stdout.text_update.connect(self.updatetext)

    def updatetext(self, text):
        """
            更新textBrowser
        """
        cursor = self.textBrowser.textCursor()
        cursor.movePosition(QTextCursor.End)
        self.textBrowser.append(text)
        self.textBrowser.setTextCursor(cursor)
        self.textBrowser.ensureCursorVisible()

referência

[1] https://blog.csdn.net/ccj15010192778/article/details/102704301
[2] https://blog.csdn.net/ccj15010192778/article/details/102704301
[3] https://blog.csdn .net/venture5/article/details/121423286

Acho que você gosta

Origin blog.csdn.net/weixin_39190382/article/details/130461982
Recomendado
Clasificación