我正在执行以下代码
import tkinter
import tkinter.messagebox
import random
from PIL import Image
item = tkinter.Button(root,
text=color,
width=20,
height=10,
relief='raised',
borderwidth=5,
bg=color
)
original = Image.open('images/img1.gif')
ph_im = Image.PhotoImage(original)
item.config(image=ph_im)
item.pack(side='left')
我正在使用Pillow for Python33。我正在尝试将图像插入按钮,但返回此错误消息:
Traceback (most recent call last): File "C:\Python33\projects\svetofor\index2.py", line 94, in <module>
Application(root) File "C:\Python33\projects\svetofor\index2.py", line 20, in __init__
self.make_widgets() File "C:\Python33\projects\svetofor\index2.py", line 50, in make_widgets
ph_im = Image.PhotoImage(original) AttributeError: 'module' object has no attribute 'PhotoImage'
答案 0 :(得分:1)
PhotoImage
位于PIL.ImageTk
模块中。
import tkinter
import tkinter.messagebox
import random
from PIL import Image, ImageTk # <---
root = tkinter.Tk()
color = 'white'
item = tkinter.Button(root,
text=color,
width=20,
height=10,
relief='raised',
borderwidth=5,
bg=color
)
original = Image.open('images/img1.gif')
ph_im = ImageTk.PhotoImage(original) # <----------
item.config(image=ph_im)
item.pack(side='left')
root.mainloop()