gibt es eine Möglichkeit die Standartterminal Ausgabe in ein Textwidget
(PyQt4)umzuleiten?
Das ganze in Python3

Danke

Code: Alles auswählen
self.ui.textEdit.setText(sys.stdout)
TypeError: QTextEdit.setText(str): argument 1 has unexpected type '_io.TextIOWrapper'
Code: Alles auswählen
from StringIO import StringIO
import sys
from PyQt4.QtCore import pyqtSignal, QObject
from PyQt4.QtGui import QApplication, QTextEdit
class TextStream(StringIO, QObject):
inputReceived = pyqtSignal(str)
def __init__(self, buf=''):
StringIO.__init__(self, buf)
QObject.__init__(self)
def write(self, s):
StringIO.write(self, s)
self.inputReceived.emit(s)
def main(args=[]):
app = QApplication(args)
sys.stdout = TextStream()
textEdit = QTextEdit()
sys.stdout.inputReceived.connect(textEdit.setText)
textEdit.show()
sys.stdout.write('Spam')
app.exec_()
if __name__ == '__main__':
main(sys.argv)