使用框架和网格创建 tkinter GUI 布局
tkinterpythongui-programming更新于 2025/6/18 6:04:17
Tkinter 是一个著名的 Python 库,用于创建基于 GUI 的应用程序。您可以借助 Tkinter 库中已有的小部件、函数和模块创建功能齐全的应用程序。
有时,选择正确的应用程序 GUI 对我们许多人来说是一项艰巨的任务。Tkinter 附带一组内置函数和扩展,可创建美观的 GUI。
通常,Tkinter 中的 Frame 小部件将应用程序中的所有小部件作为容器进行管理。它继承了主窗口可以包含的所有属性。要设计小部件的布局,我们可以使用任何几何管理器。几何管理器有助于创建小部件的布局并按特定顺序放置它们。网格几何管理器将所有小部件放置在 X 和 Y 坐标系中。我们可以提供 row 和 column 属性,将小部件放置在应用程序的任何位置。
示例
在此示例中,我们将创建注册表单的 GUI。
# 导入所需的库
from tkinter import *
# 创建 tkinter 框架或窗口的实例
win = Tk()
# 设置窗口的大小
win.geometry("700x350")
# 添加框架小部件
frame = Frame(win)
# 定义一个函数来获取数据并显示消息
def on_key_up():
name = fname
frame.pack_forget()
win.configure(bg="green4")
Label(win, text="嘿" + fname.get() + " 欢迎来到 TutorialsPoint",
font=('Segoe UI', 18, 'bold'),
background="white").pack(pady=30)
# 创建标签小部件
Label(frame, text="Registration Form",
font=('Helvetica 16 bold'),
background="green3").grid(row=5, column=0, pady=30)
frame.pack()
# 添加第一个值的字段
Label(frame, text="First Name").grid(row=7, column=0, padx=5)
fname = Entry(frame)
fname.grid(row=10, column=0, padx=10)
# 添加第二个值的字段
Label(frame, text="Family name").grid(row=12, column=0, padx=5)
sname = Entry(frame)
sname.grid(row=15, column=0, padx=10)
# 添加电子邮件字段地址
Label(frame, text="电子邮件地址").grid(row=17, column=0, padx=5)
email = Entry(frame)
email.grid(row=20, column=0, padx=10)
# 添加另一个字段以接受密码值
Label(frame, text="输入密码").grid(row=22, column=0, padx=5)
password = Entry(frame, show="*")
password.grid(row=25, column=0, padx=10)
# 创建一个按钮
Button(frame, text="注册", command=on_key_up).grid(row=15,
column=1, padx=5)
win.mainloop()
输出
运行上述代码将显示一个注册表单模板和一个按钮来注册信息。
相关文章
有用资源
python 参考教程 - 该教程包含有关 python 的更多信息:https://www.cainiaomax.com/python/

