📅  最后修改于: 2023-12-03 14:47:59.738000             🧑  作者: Mango
Tk-几何管理器是Python中Tkinter模块提供的用于布局窗口组件的工具。
在Tkinter中,有三种几何管理器可以选择使用:
在 pack() 几何管理器中,组件被放置在容器中并自动调整大小。可以使用 fill 参数控制组件在可用空间中的位置和大小。
示例代码:
import tkinter as tk
root = tk.Tk()
# 创建两个标签
label1 = tk.Label(root, text="Label 1", bg="red")
label2 = tk.Label(root, text="Label 2", bg="yellow")
# 用pack()管理器将标签放置在root窗口中
label1.pack(side="left", fill="both", expand=True)
label2.pack(side="right", fill="both", expand=True)
root.mainloop()
在 place() 几何管理器中,组件可以使用 x 和 y 参数指定在容器中的位置,也可以使用 width 和 height 参数指定组件的大小。
示例代码:
import tkinter as tk
root = tk.Tk()
# 创建一个标签
label = tk.Label(root, text="Label", bg="yellow")
# 用place()管理器将标签放置在二分之一窗口大小和位置的地方
label.place(relx= .5, rely= .5, anchor="center")
root.mainloop()
在 grid() 几何管理器中,组件可以使用行、列和单元格的索引来指定具体的位置和尺寸。
示例代码:
import tkinter as tk
root = tk.Tk()
# 创建三个标签
label1 = tk.Label(root, text="Label 1", bg="red")
label2 = tk.Label(root, text="Label 2", bg="yellow")
label3 = tk.Label(root, text="Label 3", bg="blue")
# 用grid()管理器将这三个标签放置在一个2x2的网格中
label1.grid(row=0, column=0)
label2.grid(row=0, column=1)
label3.grid(row=1, column=0, columnspan=2)
root.mainloop()
以上是Tk-几何管理器的简介,它们各自有其适用的场景,根据实际需要选择不同的几何管理器来完成窗口组件的布局。