【发布时间】:2021-05-04 10:42:30
【问题描述】:
我正在尝试使用borderwidth属性仅突出显示png图像的“新游戏”部分,但是它不起作用,我该如何解决这个错误?
from tkinter import *
from PIL import ImageTk, Image
root = Tk()
root.iconbitmap('unnamed.ico')
root.title('2048')
bg = ImageTk.PhotoImage(Image.open("welcome.png"))
new_game_btn = ImageTk.PhotoImage(Image.open("image_40.png"))
my_canvas = Canvas(root, width=780, height=550)
my_canvas.pack()
my_canvas.create_image(0, 0, image=bg, anchor=NW)
button1 = Button(root, image=new_game_btn, borderwidth=00, relief=FLAT)
button1_window = my_canvas.create_window(100, 100, anchor=NW, window=button1)
root.mainloop()
【问题讨论】:
-
你的borderwidth是
borderwidth=00所以它是零。 -
我看了一个 youtube 视频,他们说将零应用于边框宽度不会产生边框宽度,所以我想如果我也这样做,那么只会显示蓝色内部的部分,但它仍然尽管它是一个 png 文件,但显示了一些不需要的边框,如果这不是方法,那是什么?谢谢!
-
我最初不明白你的问题。尝试从图像中移除背景(使其透明)。
-
是的,前面的图片其实是透明的png图片,但是还是做了边框。
标签: python python-3.x tkinter tkinter-canvas