, basitleştirmek için 2 Tkinter konu yönetmek:Python Python 2.7 Tkinter kullanarak bir uygulama üzerinde çalışıyorum 2.7
from Tkinter import *
class rootWindow(Thread):
def __init__(self):
Thread.__init(self)
self.root = Tk()
self.button = Button(self.root,text="Execute",command=self.exec)
self.start()
self.join()
def run(self):
self.root.mainloop()
def exec(self):
# instruction 1
# instruction 2
# ...
# End instructions
sorunu (bu değiştirmek için bir excel dosyası var) exec()
işlev bir zaman alır olduğunu .
exec()
işlevi işini yaparken ikinci bir pencereyi ('lütfen bekleyin' animasyonu veya progressbar veya bir şeyle) çalıştırmak istiyorum. Yani benim yarattığım:
class waitWindow(Thread):
def __init__(self):
Thread._init__(self)
self.wait = Tk()
self.pb = ttk.Progressbar()
self.pb.pack()
self.start()
def run(self):
self.wait.after(16000, self.des)
self.wait.mainloop()
def des(self):
self.wait.destroy()
ve ben exec()
fonksiyonu çalıştırmadan önce bu konuya aradı. Başlatma iyi ama ikinci iş parçacığı geçtikten sonra 16000 ms sonra ikinci iş parçacığı durdurulamıyor.
Herhangi bir fikrin var mı? İkinci parçayı 16000 ms içinde nasıl durdurabilirim? thank peşin!
Kiriş ve bu gibi konuları kullanmak muhtemelen kötü bir fikirdir. Bunu [blog article] (http://stupidpythonideas.blogspot.com/2013/10/why-your-gui-app-freezes.html) makale için –
thank okumasını öneriyorum, kontrol edeceğim! –