tkinter网格方法不起作用

时间:2013-07-12 20:52:48

标签: 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(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()

1 个答案:

答案 0 :(得分:0)

您期望在第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)