为什么第二个 tk window 不显示图像?
Why second tk window wont show an image?
我得到了 Lighter 图像,但没有 eikona_paixnidiou 图像。我什至尝试不创建新的 window,而是更改现有的 window,但也没有用。我也尝试过 Toplevel 但没有成功
def the_game():
root=Tk()
eikona = PhotoImage(file="lighterr.gif")
eikona_paixnidiou = Label(master=root,image=eikona)
eikona_paixnidiou.grid(row=1, column=0, rowspan=3, columnspan=3)
root.mainloop()
root=Tk()
photo= PhotoImage(file="anap.gif")
Lighter = Label(master=root,image=photo)
Start=Button(root, text="LET'S START !!!", command= the_game)
Lighter.grid(row=1, column=0, rowspan=3, columnspan=3)
Start.grid(row=4, columnspan=3)
root.mainloop()
应该只有一个根window。对所有其他 windows 使用顶层。只有根 window 应该 运行 mainloop
。也就是说the_game
应该是(注意位表示):
def the_game():
win = Toplevel(root)
#^^^^^^^^^^^^^^^^^^^
eikona = PhotoImage(file="lighterr.gif")
eikona_paixnidiou = Label(win, image=eikona)
# ^^^^^^
eikona_paixnidiou.grid(row=1, column=0, rowspan=3, columnspan=3)
我觉得你的其余代码没问题。
我得到了 Lighter 图像,但没有 eikona_paixnidiou 图像。我什至尝试不创建新的 window,而是更改现有的 window,但也没有用。我也尝试过 Toplevel 但没有成功
def the_game():
root=Tk()
eikona = PhotoImage(file="lighterr.gif")
eikona_paixnidiou = Label(master=root,image=eikona)
eikona_paixnidiou.grid(row=1, column=0, rowspan=3, columnspan=3)
root.mainloop()
root=Tk()
photo= PhotoImage(file="anap.gif")
Lighter = Label(master=root,image=photo)
Start=Button(root, text="LET'S START !!!", command= the_game)
Lighter.grid(row=1, column=0, rowspan=3, columnspan=3)
Start.grid(row=4, columnspan=3)
root.mainloop()
应该只有一个根window。对所有其他 windows 使用顶层。只有根 window 应该 运行 mainloop
。也就是说the_game
应该是(注意位表示):
def the_game():
win = Toplevel(root)
#^^^^^^^^^^^^^^^^^^^
eikona = PhotoImage(file="lighterr.gif")
eikona_paixnidiou = Label(win, image=eikona)
# ^^^^^^
eikona_paixnidiou.grid(row=1, column=0, rowspan=3, columnspan=3)
我觉得你的其余代码没问题。