我有一个使用Python的项目,但无法安排按钮。如何在照片中这样排列它们?
您需要将问题分解成更小的部分。看着照片,我看到三个不同的区域:顶部带有标题的蓝色条,一行标签,输入小部件和按钮,然后是按钮网格。因此,首先要学习如何将三个水平区域彼此叠加。
接下来,您可以分别关注每个部分:
您可以使用两个几何图形管理器来完成所有这些工作:grid
和pack
。 pack
最适合边缘到边缘的对齐(例如:从左到右,从上到下)。 grid
非常适合创建网格。它们在互联网上的多个站点上都有很好的记录。
如果执行此操作,则我将使用pack
从上至下堆叠三帧,而将底帧配置为填充所有剩余空间。我还将使用pack
在第二部分中布置标签,条目小部件和按钮。我将使用网格来布置第三部分中的按钮。这不是唯一的方法,但是我认为这是最少的代码。
例如,第一步是创建三个框架并将其布局。它可能看起来像这样:
import tkinter as tk
root = tk.Tk()
title_frame = tk.Frame(root)
tool_frame = tk.Frame(root)
button_frame = tk.Frame(root)
title_frame.pack(side="top", fill=x", expand=False)
tool_frame.pack(side="top", fill="x", expand=False)
button_frame.pack(side="top", fill="both", expand=True)
之后,只需对每个部分执行相同的处理即可。
提示:在最初的开发过程中,暂时为每个框架赋予不同的颜色,粗边框和/或估计的宽度和高度会很有帮助,以便可以对其进行可视化显示。一切正常后,您可以返回并调整颜色和边框,并且在开始添加其他窗口小部件后,窗口小部件的宽度和高度应自动调整。