发布时间:2018-06-06 18:54:02编辑:Run阅读(5027)
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()
效果:
47743
46233
37107
34625
29227
25883
24743
19861
19414
17906
5713°
6312°
5832°
5885°
6981°
5827°
5842°
6358°
6313°
7670°