如何在 tkinter ~ python 中放置在网格中的两个小部件之间添加空间?

Posted

技术标签:

【中文标题】如何在 tkinter ~ python 中放置在网格中的两个小部件之间添加空间?【英文标题】:How to add space between two widgets placed in grid in tkinter ~ python? 【发布时间】:2017-01-26 01:58:17 【问题描述】:

一个。如下图所示,在网格的第 0 行放置了一个小部件。

self.a_button = Button(root, text="A Button")
self.a_button.grid(row=0, column=1)

b.并尝试在网格内的第 2 行放置另一个小部件。

self.b_button = Button(root, text="B Button")
self.b_button.grid(row=2, column=1)

但是当我运行程序时,我看不到小部件之间有任何空间,而是一个接一个地堆叠起来。

那么,如何编程以允许放置在不同行中的两个小部件之间存在空间?分享你的cmets!!

【问题讨论】:

【参考方案1】:

当你打包你可以使用的小部件时

self.a_button = Button(root, text="A Button") 
self.a_button.grid(row=0, column=1, padx=10, pady=10)

使用 padx 和 pady,您可以在按钮的外侧添加内边距,或者如果您想增加按钮的大小,您可以使用 ipadx 和 ipady 添加内边距。

如果您想了解更多关于 Grid 功能的信息,您可以查看所有选项并使用here。

【讨论】:

感谢您的信息。根据需要工作正常。欣赏。 @radioxoma 为我与 ttk 合作,你想做什么? @Allan Lago padx=10, pady=10 不应该与 ttk 小部件一起使用 @radioxoma 刚刚尝试了一个简单的树视图示例: my_Tree = ttk.Treeview(root, columns=('1', '2', '3')); my_Tree.grid(row=0, column=0, padx=100, pady=100);这似乎完全按预期工作。还尝试搜索 padx/pady 无法与 ttk 一起使用并且找不到任何内容的情况。有没有什么具体的事情你正在尝试做而你无法让它工作? @radioxoma padx=pady=grid() 几何管理器的一部分。它可以与tkttk 小部件一起使用。同样适用于 padx=pady=pack() 几何管理器。【参考方案2】:

我认为您已经得到了答案,但我将分享我的解决方案,让两行之间留出空间,这对我很有效。

spacer1 = tk.Label(win, text="")
spacer1.grid(row=4, column=0)

您可以在row= 4, column= 0 位置将其作为空白空间在标签或条目之间使用。您可能希望通过将焊盘大小添加到 spacer1.grid(row=4, column=0, padx= 10, pady= 10) 来修改空间的大小,或者修改像 spacer1 = tk.Label(win, text="", font=('Times New Roman, 40)) 这样的标签,这对您有用。输出将是两行(3 和 5)之间的空间。希望解决方案对您有所帮助。

【讨论】:

以上是关于如何在 tkinter ~ python 中放置在网格中的两个小部件之间添加空间?的主要内容,如果未能解决你的问题,请参考以下文章

在闪亮的应用程序中放置在 UiOutput 中时,缩放和重置控制器不起作用

Unit_count 和 unit_count_type 似乎在亚马逊产品提要中是必需的,但在产品 XML 中放置在哪里?

在tkinter窗口的角落的图象在Python 3

如何在类python tkinter OOP中使用命令更改按钮的背景?

如何从Tkinter,Python中的Text小部件中移除焦点

如何使用 tkinter 按钮在 python 中写入文件?