📜  Tk-几何管理器(1)

📅  最后修改于: 2023-12-03 14:47:59.738000             🧑  作者: Mango

Tk-几何管理器

Tk-几何管理器是Python中Tkinter模块提供的用于布局窗口组件的工具。

使用Tk-几何管理器

在Tkinter中,有三种几何管理器可以选择使用:

  1. pack() 几何管理器:pack() 是最简单的管理器,它将组件放置在容器中,并根据需要调整其大小。它将组件展示为水平或垂直的块,可以在任何方向堆叠。
  2. place() 几何管理器:place() 几何管理器允许指定组件在容器内的位置和尺寸,通常用于对话框之类的小窗口。
  3. grid() 几何管理器:grid() 几何管理器使用表格的形式将组件排列,具体位置和尺寸可以使用行、列和单元格的索引来指定。
使用 pack() 几何管理器

在 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() 几何管理器

在 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() 几何管理器

在 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-几何管理器的简介,它们各自有其适用的场景,根据实际需要选择不同的几何管理器来完成窗口组件的布局。