TKinter网格导致程序不运行

2024-04-20 07:58:36 发布

您现在位置:Python中文网/ 问答频道 /正文

我对python和TKinter还不熟悉。我正在尝试用一个基本的图形用户界面来编写一个程序。我想要对布局进行基本控制,并尝试实现网格。由于某种原因,当我使用grid运行代码时,不会出现窗口,如果我将该行注释掉,它工作得很好,但事情并不是我想要的。有谁能告诉我我做错了什么,更重要的是我不明白什么?你知道吗

from Tkinter import *

class Application(Frame):
    def createWidgets(self):    
        self.Name_label = Label(text="Name")    
        self.Name_label.pack({"side": "left"})
        self.Name_label.grid(row=2, column=1)#If I comment this line out, it works.

        self.Name = Entry(self)
        self.Name.pack({"side": "right"})
        #self.Name.grid(column=1, row=0)

        self.QUIT = Button(self)
        self.QUIT["text"] = "QUIT"
        self.QUIT["fg"]   = "red"
        self.QUIT["command"] =  self.quit

        self.QUIT.pack(side="bottom")

    def __init__(self, master=None):
        Frame.__init__(self, master)
        self.pack()
        self.createWidgets()

root = Tk()
app = Application(master = root)
app.mainloop()
root.destroy()

Tags: textnameselfmasterapplicationdefrootframe