[python] Presmerovanie stdout do okna v Tkinteri
RMiklos na pss.sk
RMiklos na pss.sk
Středa Leden 31 13:45:35 CET 2007
ok. teraz uz je to perfektne :-)))
Je to priklad jak sa daju modernizovat stare konzolove aplikacie na GUI
aplikacie bez zasahu do tela povodnej aplikacie.
Pavel Kosina <geon na post.cz>
Sent by: python-bounces na py.cz
31.01.2007 13:42
Please respond to
Konference PyCZ <python na py.cz>
To
Konference PyCZ <python na py.cz>
cc
Subject
Re: [python] Presmerovanie stdout do okna v Tkinteri
RMiklos na pss.sk napsal(a):
> Takze presmerovanie print-ov konzoloveho programu do okna (sys.stdout =
> text_window)
> bude fungovat i s konzolovym programom ktory pouziva sys.exit() /diky
> Leovi/ asi takto:
>
trochu jsem to vylepšil ;-)
from Tkinter import *
from ScrolledText import ScrolledText
import sys
class py_message_box:
def __init__(self, parent):
self.frame = Frame(parent)
self.frame.pack()
self.text = ScrolledText(self.frame,
background='black',foreground='green', font=("Courier", 9))
self.text.pack()
self.mybutton = Button(self.frame, text="Quit",
command=self.mybuttonClick)
self.mybutton.pack(fill=BOTH) #roztažení
def mybuttonClick(self):
self.frame.destroy() # mě nikdy quit() nefungovalo...
def write(self, s):
self.text.insert(END, s)
self.text.see(END) # aby bylo poslední vždy vidět
root=Tk()
text_window = py_message_box(root)
sys.stdout = text_window
print "Toto je pokus o presmerovanie printu do okna\n"*100 # 100x
root.mainloop()
--
geon
Pavel Kosina
_______________________________________________
Python mailing list
Python na py.cz
http://www.py.cz/mailman/listinfo/python
Mgr. Ing. Roman MIKLÓŠ
Prvá stavebná sporiteľňa a.s.
Bajkalská 30, P. O. Box 48
829 48 Bratislava 25
Tel.: +421/ 2 / 582 31 174
Fax: +421/ 2 / 582 31 109
Další informace o konferenci Python