output

H.S. Art hsart at gmx.de
Sun Jun 29 12:02:46 CEST 2003


Thank you for your answer!
That "little" trick works perfect for me. :-)



Fredrik Lundh wrote:

>H.S. Art wrote:
>
>  
>
>>I have a sript that runs very well. I do my output to the python shell
>>with the print command. That works well, too.
>>print 'Error occured ' + str(i+1)
>>
>>No I want to have my output into a textctrl frame in a window. I start
>>my script by pushing a button in my window. It starts fine but I can't
>>see any output. For test purposes I added the following code to the
>>event  handler of the button:
>>
>>self.textCtrl1.WriteText('TEST\n')
>>
>>This produces output to my text ctrl window. So I replaced all 'print'
>>commands in my script with 'self.textCtrl1.WriteText ...'
>>    
>>
>
>someone else will have to sort the variable scoping issues for you [1],
>but in the meantime, you could try the following little trick.
>
>1) at the top of your program, import the "sys" module:
>
>    import sys
>
>2) in the event handler, add the following redirection code:
>
>        # redirect output to my window
>        class redirect:
>            def __init__(self, window):
>                self.write = window.WriteText
>        sys.stdout = redirect(self.textCtrl1)
>
></F>
>
>1) the following links might be somewhat helpful:
>
>http://www.python.org/doc/current/tut/node11.html#SECTION0011200000000000000000
>http://www.python.org/doc/current/ref/naming.html (technical)
>
>
>
>
>  
>





More information about the Python-list mailing list