【发布时间】:2017-11-03 20:08:09
【问题描述】:
对 Tkinter 和 PIL 有点陌生,尝试设置一个 GUI,根据在 OptionMenu 中所做的选择来切换显示的图像。路径更新正常,但图像没有。有什么补救措施吗?
from tkinter import *
from PIL import Image, ImageTk
import os
def changeimage():
path.set(cwd + '/img/' + imageVar.get() + '.png')
img = ImageTk.PhotoImage(Image.open(path.get()))
panel.configure(image = img)
window = Tk()
window.configure(background='grey')
imageVar = StringVar(window)
images = {'image1', 'image2', 'image3'}
imageVar.set('image1')
cwd = os.getcwd()
imageSelectMenu = OptionMenu(window, imageVar, *images)
imageSelectMenu.pack()
path = StringVar(window)
path.set(cwd + '/img/' + imageVar.get() + '.png')
img = ImageTk.PhotoImage(Image.open(path.get()))
panel = Label(window, image = img)
panel.pack()
imageVar.trace('w', changeimage)
window.mainloop()
【问题讨论】:
-
您在第一次运行后绝对没有回调来设置
img -
添加了回调,图像更改为空白画布而不是我想要的图像
标签: python tkinter python-imaging-library