W.H*_*unt 0 python user-interface tkinter labels
所以我是 tkinter 的新手,但我已经得到了我想要的工作,直到某一点。我不确定我是否正确设置了它,但是我有一张世界地图,右边有按钮,左边有一个事件日志,当事情发生时,它会填满标签。问题是过一会儿,整个日志就填满了。删除所有标签或每次删除最旧(顶部)标签的最佳方法是什么?这就是我的意思:
在这里定义:
root=Tk()
Map=PhotoImage(file="C:/Users/Willam/Desktop/CWProgram/map2.gif")
background=Label(root,image=Map).place(x=100,y=0,relwidth=1,relheight=1)
Title=Label(root,text=' LOG').pack(anchor=NW)
Run Code Online (Sandbox Code Playgroud)
我像这样创建我的标签:
info=Label(root,text='Select a sector to move units from',wraplength=170)
info.pack(anchor=NW)
Run Code Online (Sandbox Code Playgroud)
我尝试了通常的info.destoy()and info.forget(),但这些只适用于该函数中使用的最后一个标签。我应该对所有标签或其他东西进行分组吗?
正如 PM 2Ring 所建议的那样,将标签附加到列表以供将来参考通常很有用:
tmp = Label(...)
labels.append(tmp)
Run Code Online (Sandbox Code Playgroud)
然后只是:
foreach label in labels: label.destroy()
Run Code Online (Sandbox Code Playgroud)
如果您不需要列表,并且您确定要清除root 中的所有内容:
foreach label in root.children.values(): label.destroy()
Run Code Online (Sandbox Code Playgroud)
子字典始终保存其中包含的对象。如果你想保留地图标签,你必须按照我展示的那样制作你自己的列表,而不是附加info到其中。
| 归档时间: |
|
| 查看次数: |
10089 次 |
| 最近记录: |