不明白furas如何使下面的代码工作。当他添加一个盒子时,为什么他没有收到关于网格和包装在同一根上的错误消息?在addbox函数中,他将一个框架设置为已经打包的根,甚至使用函数内部的包然后使用网格。
有人可以向我解释这个“魔法”是如何起作用的吗?
from Tkinter import *
def addBox():
print "ADD"
frame = Frame(root)
frame.pack()
Label(frame, text='From').grid(row=0, column=0)
ent1 = Entry(frame)
ent1.grid(row=1, column=0)
Label(frame, text='To').grid(row=0, column=1)
ent2 = Entry(frame)
ent2.grid(row=1, column=1)
all_entries.append( (ent1, ent2) )
def showEntries():
for number, (ent1, ent2) in enumerate(all_entries):
print number, ent1.get(), ent2.get()
all_entries = []
root = Tk()
showButton = Button(root, text='Show all text', command=showEntries)
showButton.pack()
没有魔力,它只是按设计工作。代码pack在根窗口中使用,并grid在框架内使用。充当其他小部件容器的每个小部件都可以使用grid或pack。你不能同时使用grid,并pack为具有相同的主部件在一起。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。