我想使用PySide创建一个简单的应用程序,仅用于从Python日志中输出内容。
我想知道:
def mpm_print():
print 'OK'
def mpm_log():
log.info('OK')
class LabWindow(QtGui.QMainWindow):
def __init__(self):
super(LabWindow, self).__init__()
self.initUI()
mpm_print()
mpm_log()
def initUI(self):
font = QtGui.QFont()
font.setFamily("Courier")
font.setFixedPitch(True)
font.setPointSize(10)
self.qtxt = QtGui.QTextEdit(self)
self.qtxt.resize(self.size())
self.qtxt.setReadOnly(True)
self.qtxt.setFont(font)
self.resize(640, 512)
self.setWindowTitle('Efficient Algorithms Lab')
self.show()
我想知道:
- 如何将stdout重定向以写入QTextEdit?
- 如何编写一个logging.Handler以记录到QTextEdit?
sys.stdout
和sys.stderr
期望与它们链接的file objects,您刚刚创建了一个新类,该类具有与file
对象相同的类函数名称(在本例中为write
)。我猜想,通过更复杂的方法,您也可以使用这种方法从qlineedit
读取stdin
? - RTbecard