更改 tkinter 小部件的形状

2022-01-18 00:00:00 python tkinter button widget

问题描述

所以我有一个简单的按钮:

So I have a simple button:

f1button3=Button(text="Database", command = lambda: DatabaseWidgets()).place(x=1,y=30)

按钮总是一个矩形,但我希望它有弯曲的边缘,甚至可能改变形状.这有可能吗?

The button is always a rectangle, but I want it to have curved edges, or possibly even change the shape. Is this at all possible?


解决方案

我遇到了同样的问题.我的解决方案是使用图像,然后将其绑定到单击.这是我使用的代码:

I hit the same problem. My solution was to use an image, then bind that to a click. Here is the code I used:

from Tkinter import *
from PIL import ImageTk, Image

app = Tk()

def do(event):
    print("Button Clicked!")
    #...

img = ImageTk.PhotoImage(Image.open("Button.gif"))
button = Label(app, image = img)
button.pack()

button.bind('<Button-1>', do)

app.mainloop()

<Button-1> 将图像绑定到右键单击."Button.gif" 是我使用的图片.

The <Button-1> binds the image to a right click. The "Button.gif" is the picture I used.

这是输出图片:

相关文章