【问题标题】:Wxwidgets and PyqtWxwidgets 和 Pyqt
【发布时间】:2010-08-23 15:16:05
【问题描述】:

Pyqt中是否有类似的函数PyOnDemandOutputWindow? 此函数将控制台输出重定向到单独的窗口。

【问题讨论】:

    标签: python pyqt wxwidgets


    【解决方案1】:

    可以将sys.std[out|err] 替换为将所有输出写入例如的包装器。一个 QPlainTextEdit。一个非常基本的例子:

    class StdoutWrapper(object):
        def __init__(self, outwidget):
            self.widget = outwidget
            self.widget.setReadOnly(True) # assuming QPlainTextEdit
            self.widget.hide()
    
        def write(self, s):
            self.widget.show()
            self.widget.appendPlainText(s) # again assuming QPlainTextEdit
    

    还有其他地方:

    import sys
    
    sys.stdout = StdoutWrapper(yourwidget)
    # similar for stderr, but you might want an error dialog or make 
    # the text stand out using appendHtml
    

    【讨论】:

      猜你喜欢
      • 2013-07-13
      • 1970-01-01
      • 1970-01-01
      • 2013-11-08
      • 1970-01-01
      • 1970-01-01
      • 2016-08-03
      • 2017-02-22
      • 2013-06-18
      相关资源
      最近更新 更多