Bu benim ilk gönderiimde stackoverflow var ama kod yolunda darbelere isabet ettikten sonra bir süredir cevapları kullanıyorum. Karanlık gün, cevabı bulamamış olduğum yere geldi. Eğer yardımcı olabilirseniz lütfen bana bildirin.Python - TKinter "zaman aşımına uğradı"
Program oldukça basittir Masaüstümde oturan ve belirli dosyalarda kaç dosya olduğunu söyleyen bir widget oluşturmak için Tkinter kullanıyorum. Yaklaşık 10 dakika çok iyi çalışıyor gibi görünüyor ve sonra çalışmayı durdurur. Yanlış bir şey olduğunu fark edinceye kadar sadece donuyor bir hata mesajı çakma ya da ping değil ve sonra üzerine tıklamak veya kapatmak için çalıştığınızda çalışmayı durdurdu diyor. Tüm yardım gerçekten apprciated olacağını
import Tkinter as tk
import time
import os
from Tkinter import Tk, Label, BOTH
from ttk import Frame, Style
class SampleApp(tk.Tk):
def __init__(self, *args, **kwargs):
tk.Tk.__init__(self, *args, **kwargs)
self.clock = tk.Label(self, text="")
self.clock.pack()
# start the clock "ticking"
self.update_clock()
def update_clock(self):
ptc = len(os.listdir("Folder Dir"))
if ptc != 0:
label1 = Label(self, text="Pre TC", fg="red")
else:
label1 = Label(self, text="Pre TC")
label1.place(x=0, y=0)
if ptc != 0:
label2 = Label(self, text=ptc, fg="red")
else:
label2 = Label(self, text=ptc)
label2.place(x=90, y=0)
pp = len(os.listdir("Folder Dir"))
if pp != 0:
label3 = Label(self, text="PP", fg="red")
else:
label3 = Label(self, text="PP")
label3.place(x=0, y=65)
if pp != 0:
label4 = Label(self, text=pp, fg="red")
else:
label4 = Label(self, text=pp)
label4.place(x=90, y=65)
stc = len(os.listdir("Folder Dir"))
if stc != 0:
label5 = Label(self, text="Super TC", fg="red")
else:
label5 = Label(self, text="Super TC")
label5.place(x=0, y=150)
if stc!= 0:
label6 = Label(self, text=stc, fg="red")
else:
label6 = Label(self, text=stc)
label6.place(x=90, y=150)
wff = len(os.listdir("Folder Dir"))
if wff != 0:
label7 = Label(self, text="WIN FF", fg="red")
else:
label7 = Label(self, text="WIN FF")
label7.place(x=0, y=230)
if wff != 0:
label8 = Label(self, text=wff, fg="red")
else:
label8 = Label(self, text=wff)
label8.place(x=90, y=230)
wa = len(os.listdir("Folder Dir"))
if wa != 0:
label9 = Label(self, text="Wave Agent", fg="red")
else:
label9 = Label(self, text="Wave Agent")
label9.place(x=0, y=315)
if wa != 0:
label10 = Label(self, text=wa, fg="red")
else:
label10 = Label(self, text=wa)
label10.place(x=90, y=315)
bwf = len(os.listdir("Folder Dir"))
if bwf != 0:
label11 = Label(self, text="BWF", fg="red")
else:
label11 = Label(self, text="BWF")
label11.place(x=0, y=395)
if bwf != 0:
label12 = Label(self, text=bwf, fg="red")
else:
label12 = Label(self, text=bwf)
label12.place(x=90, y=395)
swi = len(os.listdir("Folder Dir"))
if swi != 0:
label13 = Label(self, text="Switch", fg="red")
else:
label13 = Label(self, text="Switch")
label13.place(x=0, y=480)
if swi != 0:
label14 = Label(self, text=swi, fg="red")
else:
label14 = Label(self, text=swi)
label14.place(x=90, y=480)
# call this function again in one second
self.after(1000, self.update_clock)
def main():
app = SampleApp()
app.title('Counter')
app.geometry("50x510+1000+8")
app.mainloop()
if __name__== "__main__":
main()
:
İşte benim kod!
Şerefe!
arka planda oluşturulmuş yeni widget'lar nelerdir? programı çalıştırdığınızda yeni pencereleri göremiyorsunuz –
Yeni widget'lar eski widget'larla aynı pencerede görünür. Yeni widget'lar eskilere benzer şekilde yerleştirilir ve bunların üstünde görünür, dolayısıyla eskiler artık görünmez. Ama hala oradalar. – Kevin
Ahh bu bir tonluk hissi veriyor! Sadece hızlı cevap için teşekkür etmek istiyorum! Sanırım ihtiyacım olan başka bir bilgiye bakmak için cevabınızdan çıkacak kadar büyük olasılıkla var, teşekkürler. –