我觉得这将有一个真正简单的解决方案,但看到我过去三天试图让这样的事情发挥作用,我再次转向这个网站。 我试图使滑块小部件在达到200后消失,而我认为我应该工作,但是因为我对所有东西的致命缺陷,它不是。我有点挣扎,我一直在研究如何设置这样的东西,所以真的,任何帮助都是受欢迎的,非常感谢。
def oneScoop():
if rectSlider == 200:
rectSlider.destroy()
oneScoopButton = Button(root,command = oneScoop, bg="light yellow", text="One Scoop")
canvas.create_window(400, 40, width=100,height=25,anchor=NW, window=oneScoopButton)
答案 0 :(得分:3)
我将评论作为正式答案发布,因此我们可以将此问题标记为已解决:
问题似乎是rectSlider
是Scale
对象,所以检查:
if rectSlider == 200:
没有意义。修复方法是简单地使用Scale.get()
函数来检查值:
if rectSlider.get() == 200:
对于其他遇到类似问题的人来说,这是代码如何运作的一个小例子:
from tkinter import *
master = Tk()
def done():
if w.get() == 200:
w.destroy()
w = Scale(master, from_=0, to=200, orient=HORIZONTAL, command = lambda x: done() )
w.pack()
mainloop()
一旦Scale
小部件的值达到200,小部件就会被销毁。