微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Tkinter Python frame.pack命令未提供预期的输出

如何解决Tkinter Python frame.pack命令未提供预期的输出

我一直在 frame小部件上使用 Tkinter Python tutorial
(在使用框架小部件为框架分配小部件小节下。按该短语搜索即可轻松到达。)

frame_a=tk.Frame()    
frame_b=tk.Frame()

label_a=tk.Label(text="I am frame A")   
label_a.master=frame_a    
label_a.pack()   

label_b=tk.Label(text="I am frame B")  
label_b.master=frame_b
label_b.pack()

frame_a.pack()  
frame_b.pack()  

运行此代码时,它成功提供了

this

输出
考虑最后两行;该教程建议更改顺序,并将frame_b.pack()放在frame_a.pack()之前,这将使“我是B帧” 出现在顶部,因为 frame_b 首先打包。

但是,我得到的输出与以前相同。我在做什么错呢? (代码运行没有错误。)

解决方法

正如@Brian所说,label_a.master()不执行任何操作,因此请像这样移动label.pack()命令:

frame_a=tk.Frame()    
frame_b=tk.Frame()

label_a=tk.Label(text="I am frame A")   

label_b=tk.Label(text="I am frame B")  

label_b.pack()
label_a.pack()#Moved

frame_b.pack()
frame_a.pack()

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。