如何在Tkinter中分层小部件(在图像前面生成形状)?

2024-04-26 09:58:17 发布

您现在位置:Python中文网/ 问答频道 /正文

我试着在图像前面画形状,但我看不到它们——它们在图像后面。如何使图像返回一层/形状前进一层?这是我的密码:

photo = PhotoImage(file='Alveoli.ppm')
        img = Label(tk, image=photo)
        img.image = photo 
        img.place(x=0, y=0)
        oc = canvas.create_oval(0, 0, 400, 400, fill = 'red')

@Philipp在使用tag_raise之后仍然是这样(img在左边): enter image description here


Tags: 图像image密码imgplacelabeltkfile
2条回答

您应该能够使用以下方法:tag_raise()

在你的情况下应该是这样的:

canvas.tag_raise(oc)

不能在嵌入的小部件上覆盖画布项。如果要在图像上绘制,图像必须是使用create_image创建的画布对象。你知道吗

完成之后,可以使用canvas方法liftlower来更改项目的堆叠顺序(z索引)。你知道吗

photo = PhotoImage(file='Alveoli.ppm')
canvas.create_image(0, 0, image=photo, anchor="nw")
oc = canvas.create_oval(0, 0, 400, 400, fill = 'red')

相关问题 更多 >