Как добавить одинаковые теги в элемент canvas, получив на выходe tuple?
При создании тегов через create_text
теги создаются как мне надо: одинаковые не удаляются и сохраняются в формате tuple
, чтобы я мог к каждому из них потом обратится по индексу.
Далее мне надо удалить все эти теги и добавить новые, где также могут встретиться одинаковые, но tkinter
через метод .addtag_withtag
уже добавляет только уникальные теги.
Как я понял, нет встроенных средств для замены тегов по индексу.
Я сохранял одинаковые теги путем передачи в addtag_withtag
строки с одинаковыми подстроками, но в таком случае в дальнейшем я не смогу обратиться по подстроке к этому элементу.
Мой код:
import tkinter as tk
root = tk.Tk()
canvas = tk.Canvas()
canvas.pack(expand=True, fill=tk.BOTH)
id_txt = canvas.create_text(50, 50, text='Hello', tags=['tx', '0.0', '0.0'])
print(canvas.gettags(id_txt))
for i in canvas.gettags(id_txt):
canvas.dtag(id_txt, i)
for i in ['tx', '0.0', '0.0']:
canvas.addtag_withtag(i, id_txt)
print(canvas.gettags(id_txt))
root.mainloop()
Нужен такой ответ после добавления тегов:
('tx', '0.0', '0.0')