使用.grid()时Python Tkinter无法打开

Cod*_*ard 1 python tkinter python-2.7

我正在通过在线教程学习如何使用Tkinter制作GUI.但是我在使用.grid()函数时遇到了问题.

这是我到目前为止:

from Tkinter import *

root = Tk()
title = Label(root, text = "Hello World")
title.pack()

name           = Label(root, text = "Name")
password       = Label(root, text = "Password")
entry_name     = Entry(root)
entry_password = Entry(root)

name.grid           (row = 0, sticky = E)
password.grid       (row = 0, sticky = E)
entry_name.grid     (row = 0, column = 1)
entry_password.grid (row = 1, column = 1)

check = Checkbutton(root, text = "Keep me logged in")
check.grid(columnspan = 2)

root.mainloop()
Run Code Online (Sandbox Code Playgroud)

因此我遇到的问题是,只要我包含第一行:

name.grid(row = 0, sticky = E)
Run Code Online (Sandbox Code Playgroud)

然后运行脚本,没有错误,但没有任何打开.该程序只是挂起,我必须关闭命令提示符才能重新获得控制权.

如果我使用.grid()注释掉所有行,他们的程序工作正常,并打开一个窗口,里面有我的标题.

那么,有谁知道我做错了什么?我使用的是Python 2.7

Bry*_*ley 5

你不能同时使用pack,并grid与同一父两个或更多的widget.在你的情况你使用packtitlegrid其他一切.使用其中一个.