Итак, у меня есть две фигуры в tkinter python3.0, одна фигура заключена внутри другой.Я дал им оба разных тега.При щелчке я хочу заполнить выбранную форму, цвет которой зависит от тега элемента.
Попробовав это, я обнаружил, что, если я сначала заполнил внутреннюю форму, я мог бы заполнить внешнюю форму в порядке.Однако, если бы я сделал противоположное и сначала заполнил внешнюю форму, я не смог бы по какой-то причине заполнить внутреннюю форму.Я попытался сделать tag_lower () и tag_raise (), но они ничего не меняют.
Ниже приведен код:
from tkinter import *
root = Tk()
canvas = Canvas(root,width=200,height=200,bg="white")
canvas.grid()
firstRect = canvas.create_rectangle(10,10,30,30, tag="in")
secondRect = canvas.create_rectangle(15,15,25,25, tag="out")
def onclick(event):
item = canvas.find_closest(event.x, event.y)
tags = canvas.gettags(item)
if tags[0] == "in":
canvas.itemconfig(item, fill="red")
else:
canvas.itemconfig(item, fill="blue")
canvas.bind('<Button-1>', onclick)
Я не могу заполнить внутреннюю форму после того, как внешняя имеетбыл заполнен.Как бы я пошел по этому вопросу?Спасибо.