#!/usr/bin/python
import wx
import os
import sys
class MyFrame(wx.Frame):
def __init__(self, parent, id, title):
wx.Frame.__init__(self, parent, id, title, size=(480, 400))
self.panel = MyPanel(self, -1)
self.Centre()
self.Show(True)
setstd()
print 'test'
"""
syncall()
"""
class MyPanel(wx.Panel):
def __init__(self, parent, id):
wx.Panel.__init__(self, parent, id)
self.text = wx.StaticText(self, -1, '', (40, 60))
class MyText():
def write(string):
label = frame.panel.text.GetLabel()
frame.panel.text.SetLabel(string)
def setstd():
sys.stdout = MyText()
sys.stderr = MyText()
app = wx.App()
frame = MyFrame(None, -1, 'DropBox log')
app.MainLoop()
'test'가 인쇄되지 않으면 실행되기도하지만 'test'라는 인쇄물을 사용하면 출력이 실행되거나 리디렉션되지 않습니다.터미널 대신 터미널 gui의 메시지를 출력하도록 표준 출력을 재지향
터미널 대신 gui에서 메시지를 출력하도록 표준 출력을 리디렉션하는 방법은 무엇입니까?
() setstd에 대한 들여 쓰기를 수정하십시오. 나는 당신이 의미하는 바를 알고 있지만 파이썬에서는 들여 쓰기가 중요하다고 확신합니다. – robert
완료 됨, 고정 된 들여 쓰기 –