发布时间:2018-06-06 18:54:02编辑:Run阅读(6171)
Frame 就是屏幕上的一块矩形区域,多是用来作为容器(container)来布局窗体
创建Frame
代码:
import tkinter as tk root = tk.Tk() # 以不同的颜色区别各个frame for i in ['red', 'blue', 'yellow', 'green', 'white', 'black']: # 注意这个创建frame的方法与其它创建控件的方法不同,第一个参数不是root tk.Frame(height=20, width=400, bg=i).pack() root.mainloop()
效果:

添加不同颜色的 Frame,大小均为20*400
向 Frame 中添加 Widget
代码:
import tkinter as tk root = tk.Tk() fm = [] # 以不同的颜色区别各个frame for i in ['red', 'blue', 'yellow', 'green', 'white', 'black']: # 注意这个创建frame的方法与其它创建控件的方法不同,第一个参数不是root fm.append(tk.Frame(height=20, width=400, bg=i)) # 向下面的Frame中添加一个Label tk.Label(fm[1], text='hello world').pack() for i in fm: i.pack() root.mainloop()
结果:

Label 被添加到上面的 Frame 中了,而不是 root 默认的最上方
Tk8.4以后 Frame 又添加了一类 LabelFrame,添加了 Title 的支持
代码:
import tkinter as tk root = tk.Tk() # 以不同的颜色区别各个frame for i in ['red', 'blue', 'yellow', 'green', 'white', 'black']: # 可以使用 text 属性指定 Frame 的 title tk.LabelFrame(height=50, width=300, text=i,bg=i).pack() root.mainloop()
效果:

51551
51114
41648
38403
32890
29869
28583
23538
23471
21821
1967°
2669°
2222°
2158°
2606°
2187°
2916°
4841°
4683°
3326°