Python 3.x tkinter网格法赢得';行不通

Python 3.x tkinter网格法赢得';行不通,python-3.x,tkinter,Python 3.x,Tkinter,我有这个代码,我制作的标签没有出现在我想要的地方,它只是出现在0,0位置。请修复我的代码: from tkinter import * class Application(Frame): def __init__(self, master): super(Application, self).__init__(master) self.grid() self.create_widgets() def create_widgets

我有这个代码,我制作的标签没有出现在我想要的地方,它只是出现在0,0位置。请修复我的代码:

from tkinter import *

class Application(Frame):
    def __init__(self, master):
        super(Application, self).__init__(master)
        self.grid()
        self.create_widgets()

    def create_widgets(self):
        self.sumbit_lbl = Label(self, text = "Does this work?")
        self.sumbit_lbl.grid(row = 2, column = 3)



root = Tk()
root.title("Does this work?")
root.geometry("200x200")

app = Application(root)

root.mainloop()

您希望在第0行和第1行以及第0列、第1列和第2列中看到什么?你没有在它们里面放任何东西,所以它们的宽度和高度都是零

换句话说,它正在按预期工作。要使行或列可见,它需要指定一个minsize,或者行或列中的某个内容。还有一些其他方法可以使其可见,但归根结底,您必须显式地安排空行或空列以使其可见

如果您想向自己证明您的小部件实际上位于您指定的行和列中,您可以为所有空行和列指定最小大小。例如,在构造函数中添加以下内容:

for row in range(4):
    self.grid_rowconfigure(row, minsize=8)
    for col in range(4):
        self.grid_columnconfigure(col, minsize=8)

我不明白我是用网格方法把按钮放在那个位置的position@user2525477:您的小部件位于第2行第3列。问题是,行0和行1的高度为零,因此它们不可见。此外,列0、1和2的宽度为零,因此它们也不可见。