使用 Tkinter 使用网格管理器创建多个框架
先决条件:Tkinter
Tkinter可以支持在同一帧中创建多个小部件。不仅如此,它还支持将它们相对于彼此对齐的机制。在 Tkinter 中对齐不同小部件的最简单方法之一是通过网格管理器。除了对齐各种小部件外,网格管理器还可用于对齐众多框架。
在本文中,我们将讨论使用 Grid Manager 对齐多个框架的方法。
为此,首先需要定义框架,然后需要使用 grid() 对齐它们。
句法:
frame1=LabelFrame(app, text=”#Text you want to give in frame”)
frame1.grid(row=#Row value, column=#Column value)
函数
- LabelFrame() 用于创建框架
- grid() 用于将网格管理器应用于创建的小部件
方法
- 导入模块
- 使用 tkinter 创建一个 GUI 应用程序
- 为应用程序命名。(可选)
- 现在,创建第一帧,即 frame1
- 通过指定行和列值在网格管理器中显示 frame1。
- 此外,创建一个您希望在 frame1 中显示的小部件。
- 显示您在上一步中制作的小部件。
- 要创建更多帧,请重复步骤 4 到 7。重复这些步骤 n 次以创建 n 个帧。不要忘记更改每一帧的行值和列值。您可以根据给定的图像更改帧的行值和列值。
- 最后,制作用于在屏幕上显示 GUI 应用程序的循环。
程序:
Python
# Import the library tkinter
from tkinter import *
# Create a GUI app
app = Tk()
# Give a title to your app
app.title("Vinayak App")
# Constructing the first frame, frame1
frame1 = LabelFrame(app, text="Fruit", bg="green",
fg="white", padx=15, pady=15)
# Displaying the frame1 in row 0 and column 0
frame1.grid(row=0, column=0)
# Constructing the button b1 in frame1
b1 = Button(frame1, text="Apple")
# Displaying the button b1
b1.pack()
# Constructing the second frame, frame2
frame2 = LabelFrame(app, text="Vegetable", bg="yellow", padx=15, pady=15)
# Displaying the frame2 in row 0 and column 1
frame2.grid(row=0, column=1)
# Constructing the button in frame2
b2 = Button(frame2, text="Tomato")
# Displaying the button b2
b2.pack()
# Make the loop for displaying app
app.mainloop()
输出: