gpt4 book ai didi

python - Tkinter 更好的背景

转载 作者:行者123 更新时间:2023-12-01 09:18:56 25 4
gpt4 key购买 nike

I have managed to create this.

我使用具有不同色调的椭圆形来创建此效果。

def Banner():
canvas.create_oval(-300, 1600, 4000, 200, fill="gray38", outline="gray38", width=4)
banner_label = Label (canvas, width=30, height=2, font=font3, text = "FITNESS FIRST", bg="gray30", fg = "white")
canvas_banner_label = canvas.create_window(500, 200, window=banner_label)

但是我想知道是否有办法让椭圆形几乎优先,并重叠标签,使椭圆形位于其前面,从而使图案始终可见

最佳答案

在 Canvas 上使用 Label() 的问题是标签本身有自己的背景,并且始终与文本处于同一水平,因此您无法将 Canvas 图像重叠在文本后面。然而,canvas 有一个名为 create_text 的方法,它将直接在 Canvas 上绘制文本,而不是使用标签。

以下是使用 create_text 绘制 Canvas 的示例。

create_text 方法中,前 2 个参数是坐标,那么您需要的只是文本字体,填充是颜色。

import tkinter as tk

root = tk.Tk()

canvas = tk.Canvas(root, width=800, height=650, bg="darkgrey")
canvas.create_oval(-300, 1600, 4000, 200, fill="gray38", outline="gray38", width=4)
canvas.create_text(400,325, text="FITNESS FIRST", font=("Purisa", 60),fill="white")

canvas.pack()
root.mainloop()

结果:

enter image description here

关于python - Tkinter 更好的背景,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50973137/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com