原文: https://pythonbasics.org/tkinter_frame/

Tk 中的框架可让您组织和分组小部件。 它像一个容器一样工作。 它是可以放置遗物的矩形区域。

如果您制作的是 GUI 应用,则将使用其他小部件。 这些小部件需要以某种方式进行组织,这就是框架的来源。

Tkinter 框架按钮

下面的 Tkinter 程序演示了框架的使用。 它包括带有回调函数的按钮。 框架可以有填充。

  1. from tkinter import *
  2. def say_hi():
  3. print("hello ~ !")
  4. root = Tk()
  5. frame1 = Frame(root)
  6. frame2 = Frame(root)
  7. root.title("tkinter frame")
  8. label= Label(frame1,text="Label",justify=LEFT)
  9. label.pack(side=LEFT)
  10. hi_there = Button(frame2,text="say hi~",command=say_hi)
  11. hi_there.pack()
  12. frame1.pack(padx=1,pady=1)
  13. frame2.pack(padx=10,pady=10)
  14. root.mainloop()

Tkinter 框架 - 图1

Tkinter 框架照片

可以添加不同类型的小部件。 该示例具有 Tkinter 框架照片。 它还有一个标签。 您可以向框架添加任何类型的小部件。

  1. from tkinter import *
  2. root = Tk()
  3. textLabel = Label(root,
  4. text="Label",
  5. justify=LEFT,
  6. padx=10)
  7. textLabel.pack(side=LEFT)
  8. photo = PhotoImage(file="cat.png")
  9. imgLabel = Label(root, image=photo)
  10. imgLabel.pack(side=RIGHT)
  11. mainloop()

Tkinter 框架 - 图2

Tkinter 框架

下面的 Tkinter 程序添加了不同颜色的多个框架。 它们都具有相同的宽度和高度。 换句话说,您可以更改框架的样式。

  1. from tkinter import *
  2. root = Tk()
  3. for fm in ['blue','red','yellow','green','white','black']:
  4. Frame(height = 20,width = 640,bg = fm).pack()
  5. root.mainloop()

Tkinter 框架 - 图3

下载 Tkinter 示例