如何创建图像按钮 - Python [复制]

问题描述 投票:-1回答:2

这个问题在这里已有答案:

对于按钮,我想将“文本”更改为“图像”,例如橡皮擦图片而不是橡皮擦文本。

这是代码部分:

def __init__(self):

    self.root = Tk()

    self.choose_size_button = Scale(self.root, from_=1, to=15, orient=HORIZONTAL) 
    self.choose_size_button.grid(row=0, column=1)

    self.draw_button = Button(self.root, text='Draw', command=self.use_draw) 
    self.draw_button.grid(row=0, column=2)

    self.color_button = Button(self.root, text='Colour', command=self.choose_color) 
    self.color_button.grid(row=0, column=3)

    self.eraser_button = Button(self.root, text='Eraser', command=self.use_eraser)
    self.eraser_button.grid(row=0, column=4)

    self.c = Canvas(self.root, bg='white', width=650, height=600) 
    self.c.grid(row=1, columnspan=5)

    self.setup() 
    self.root.mainloop()
python button tkinter
2个回答
1
投票

您应该使用tinkter来执行任务。您可以将图像参数传递给按钮。例如:

import Tkinter as tk

class View(tk.Frame):
    def __init__(self, *args, **kwargs):
        tk.Frame.__init__(self, *args, **kwargs)
        self.image = tk.PhotoImage(file="anyfile.gif")
        b = tk.Button(self, text=" ", image=self.image)
        b.pack(side="top")

if __name__ == "__main__":
    root = tk.Tk()
    view = View(root)
    view.pack(side="top", fill="both", expand=True)
    root.mainloop()

0
投票

您可以在tkinter中使用Button的图像参数。

例如;看到这个片段: -

from tkinter import *
from PIL import ImageTk, Image
root = Tk()
img = ImageTk.PhotoImage(Image.open('your_image_path'))
b = Button(root, command = print('hello'), image = img)
b.pack()
b.place()
© www.soinside.com 2019 - 2024. All rights reserved.