Tkinter与我的主循环一起管理我的事件循环

Tkinter与我的主循环一起管理我的事件循环,第1张

Tkinter与我的主循环一起管理我的事件循环

您已经在运行一个无限循环,因此您不应该尝试添加另一个循环。相反,您可以使用该

after
方法使函数被如此频繁地重复调用。在您的情况下,您可以替换为:

def updateStock(self):   while True:        labelName = str(s) + "Label"        stockPrice = get_quote(s)        self.labelName = Label(self.myContainer1, text = s.upper() + ": " + str(stockPrice))        self.labelName.pack()        time.sleep(10)

… 有了这个:

def updateStock(self):    labelName = str(s) + "Label"    stockPrice = get_quote()    self.labelName = Label(self.myContainer1, text = s.upper() + ": " + str(stockPrice))    self.labelName.pack()    self.after(10000, self.updateStock)

这将得到报价,添加标签,然后安排自己在10秒(10,000毫秒)内再次被调用。

但是,我怀疑您想每10秒创建一个新标签吗?最终,窗口将充满标签。相反,您可以创建一次标签,然后在每次迭代中更新标签。例如,

self.label
在init中创建一次,然后在循环中可以执行以下 *** 作:

self.labelName.configure(text=s.upper() + ": " + str(stockPrice))


欢迎分享,转载请注明来源:内存溢出

原文地址: https://www.outofmemory.cn/zaji/5674251.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-17

发表评论

登录后才能评论

评论列表(0条)

保存