Python Tkinter window 当我 运行 它时打不开

Python Tkinter window does not open when I run it

我正在尝试创建一个 4 图片 1 字的副本。当我 运行 我的代码没有 window 打开时,即使我在代码末尾包含了 .mainloop() 。我试图为字母创建按钮,输入框获取并显示输入,然后输入按钮检查输入是否正确。在包含图像部分之前,我的代码运行良好。我在网上查看过帮助,图像的代码似乎没问题。所以,我不知道错误在哪里。如果你能帮助我就太好了out.Thanks!! <3

import tkinter
from PIL import ImageTk, Image

window = tkinter.Tk()
window.title("4 Pics 1 Word")
window.geometry("546x600")

botFrame = tkinter.Frame(window)
botFrame.pack(side=tkinter.BOTTOM)

word = "APPLE"
wordLength = 5

Letters = [
    'A','I','H','O','P','U',
    'P','R','E','Z','L','Q']

row = 5
col = 0
for i in Letters:
    button_style = 'raised'
    action = lambda x = i: click_event(x)
    tkinter.Button(window, text = i, width = 7, height = 3, relief =     button_style, command = action) \
    .grid(row = row, column = col, sticky = 'nesw', )
    col += 1
    if col > 5:
        col = 0
        row += 1

tkinter.Button(window, text= "CLEAR", width = 7, height = 3, relief =  button_style, command = lambda x = "CLEAR": clear_event(x))\
                   .grid(row = 7, column = 0)

tkinter.Button(window, text= "ENTER", width = 7, height = 3, relief = button_style, command = lambda x = "ENTER": enter_event(x))\
                   .grid(row = 7, column = 2)

display = tkinter.Entry(window, width = 40, bg = "white")
display.grid(row = 0, column = 0, columnspan = 8)


img = ImageTk.PhotoImage(Image.open("Level1.gif"))
panel = tkinter.Label(botFrame, image = img)
panel.image = img
panel.pack(side = "bottom", fill = "both", expand = "yes")


def clear_event(key):
    if key == "CLEAR":
        display.delete(0,tkinter.END)

def enter_event(key):
    if key == "ENTER":
        final = display.get()
        if final == word:
            display.delete(0,tkinter.END)
            tkinter.messagebox.showinfo( "Congrats!!", "YOU WIN!!")


def click_event(key):
    display.insert(tkinter.END, key)

window.mainloop()

删除此代码并尝试:botFrame.pack(side=tkinter.BOTTOM) 因为看起来您不能同时使用几何图形和打包,所以您必须保留几何图形或打包

我希望这对你有用。