Tkinter:如何自己制作按钮中心?

Posted

技术标签:

【中文标题】Tkinter:如何自己制作按钮中心?【英文标题】:Tkinter: How to make a button center itself? 【发布时间】:2015-09-16 16:33:06 【问题描述】:

我正在用 Python 编写一个程序,我想使用一个在中心有一堆按钮的布局。如何使用 pack() 使按钮居中?

【问题讨论】:

你有没有尝试过,如果有的话,包括任何代码,说明你卡在哪里。 这个相关问题可能会有所帮助:***.com/q/5114487/945456 【参考方案1】:

如果这不能解决您的问题

button.pack(side=TOP)

你需要使用方法

button.grid(row=1,col=0)

row=1,col=0 的值取决于窗口中其他小部件的位置

或者你可以使用.place(relx=0.5, rely=0.5, anchor=CENTER)

button.place(relx=0.5, rely=0.5, anchor=CENTER)

使用.place()的示例:

from tkinter import *  # Use this if use python 3.xx
#from Tkinter import *   # Use this if use python 2.xx
a = Button(text="Center Button")
b = Button(text="Top Left Button")
c = Button(text="Bottom Right Button")

a.place(relx=0.5, rely=0.5, anchor=CENTER)
b.place(relx=0.0, rely=0.0, anchor=NW)
c.place(relx=1.0, rely=1.0, anchor=SE)
mainloop()

【讨论】:

谢谢!不过有一个问题:如果我在每个按钮上都使用anchor=CENTER,它们会相互重叠吗? 是的。它们会相互重叠。但是您可以更改亲属坐标,因为这不会发生。锚点指示参考点而不是位置。 你也可以使用 pack 和 grid 添加示例吗? 请注意,对于网格管理器,您最终可能不得不使用columnspanrowspan 选项(参见此处:effbot.org/tkinterbook/grid.htm),甚至可能使用Grid.columnconfigureGrid.rowconfigure将权重从 0 更改为 1 的方法(参见此处:***.com/questions/7591294/…)。无论哪种情况,使用您提到的其他几何管理器显示您在上面所做的示例也会有所帮助。 感谢您的回答。很有帮助,

以上是关于Tkinter:如何自己制作按钮中心?的主要内容,如果未能解决你的问题,请参考以下文章

Python连载60-Tkinter布局按钮以及属性详解

Python3 Tkinter基础 点击按钮退出窗体 root.quit

如何使用 tkinter Canvas 小部件制作按钮?

Tkinter GUI 未显示,但功能收到响应

带有Tkinter和openCV的图像编辑软件,以及如何制作一个达到功能并显示它的按钮

将按键发送到嵌入式 Pygame