【发布时间】:2022-12-09 11:41:01
【问题描述】:
这是我的代码 - 我正在尝试创建_文本并将其放在图像上但是当运行代码时我只能看到它甚至出现如果我在位置 0,0 创建它,位置 400,263 的其他文本不显示(因为它在图像下分层)
window = Tk()
window.title("Flash Card")
window.config(pady=50, padx=50, background=BACKGROUND_COLOR)
canvas = Canvas(width=800, height=526)
french_background = PhotoImage (file ="images/card_front.png")
canvas.create_image(400, 263, image=french_background)
canvas.create_text(0, 0, text="French", fill= "black" , font=("Ariel", 40, "italic"))
canvas.create_text(400,263, text=random_french, fill="black", font=("Ariel",60,"bold"))
canvas.config(bg=BACKGROUND_COLOR, highlightthickness=0)
canvas.grid(row=0, column=0, columnspan=2)
【问题讨论】:
-
当我运行你的代码时,文本是在图像之上。
-
知道为什么它显示在我的电脑上吗?我花了几个小时试图弄明白。
-
不,我没想到它会在图像下方,因为
Canvas上的图形对象是按照它们创建的顺序绘制的(即它们从后到前出现,最后面的先绘制) ). -
当我运行这段代码时,文本出现在图像上,正如我所期望的那样,因为它是在图像之后创建的。请创建一个完整的minimal reproducible example,然后将其复制并粘贴到您机器上的一个新文件中,以确保它确实说明了您遇到的问题。
-
我在原始帖子中添加了输出图像。