0

我一直在寻找答案,但似乎以前没有人遇到过这个问题。我不知道我错过了什么。这是代码的简化版本,有同样的问题:

app = tk.Tk()

location  = 'C:\\Users\\User\\Desktop'


image = location + '\\ab.PNG'
image_final = tk.PhotoImage(file = image)
var = tk.StringVar(app)
list_file=['1','2']



def do(event):

    if var.get() == 1:
        image = location + '\\cd.PNG'
    else:
        image = location + '\\ab.PNG'
    image_final = tk.PhotoImage(file = image)

    a.config(image = image_final)




style_optionMenu = ttk.Style()
style_optionMenu.configure('style_option.TMenubutton', background = "green", foreground = "white")
option_athletes = ttk.OptionMenu(app,var,list_file[0],*list_file, style = 'style_option.TMenubutton', command = do )
option_athletes.config(width = 20)
option_athletes.pack()    



a= tk.Label(master = app, image = image_final)
a.pack()


app.mainloop()

问题是,尽管显示了第一张图像,但每当我更改 OptioMenu 中的值时,图像就会消失并且不再收割。其他一切(不在此示例代码中)都运行良好。有没有人有任何线索或知道更好的选择来做到这一点?非常感谢!

4

0 回答 0