发布时间:2018-06-06 18:54:02编辑:Run阅读(4573)
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()
效果:
46459
44346
35799
33352
28055
24621
23548
18760
18016
16702
4522°
5083°
4615°
4754°
5418°
4377°
4432°
4977°
4872°
6123°