Итак, я новичок в tkinter, но у меня есть то, что я хочу работать, до определенного момента. Я не уверен, что правильно настроил его, но у меня есть карта мира с кнопками справа, а журнал событий слева, который заполняется ярлыками, как это происходит. Проблема заключается в том, что через некоторое время весь журнал заполняется. Каков наилучший способ удалить все ярлыки или, возможно, удалить самую старую (верхнюю) метку каждый раз? Вот что я имею в виду:Очистка всех ярлыков от окна 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)
И я создаю свои метки, как это:
info=Label(root,text='Select a sector to move units from',wraplength=170)
info.pack(anchor=NW)
Я попробовал обычную info.destoy()
и info.forget()
, но они работать только с последней меткой, используемой в этой функции. Должен ли я сгруппировать все ярлыки или что-то еще?
очень распространенная ошибка 'var = Widget(). Pack()' вы оцениваете значение 'var', возвращаемое' pack() ', а не' Widget() '. Вам нужны два шага: var = Widget() 'и' var.pack() '. То же самое с 'place()' (и 'grid()', если вы будете использовать в будущем). – furas
Я предлагаю добавить ваши ярлыки в список. Это позволяет легко убивать (или перерабатывать) самые старые. –
Возможный дубликат [Tkinter: AttributeError: NoneType-объект не имеет атрибута get] (http://stackoverflow.com/questions/1101750/tkinter-attributeerror-nonetype-object-has-no-attribute-get) – Lafexlos