You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Tkinter中实现控件居中对齐?计数器应用布局问题求助

你可以通过调整grid布局的跨列设置、给窗口行列配置权重实现所有控件居中,修改后的完整代码如下:

from tkinter import Label, Button, Tk
from tkinter import font


window = Tk()

window.geometry('500x500')

window.title("Counter")

window.count = 0

def increment():
    window.count += 1
    lbl.configure(text=window.count)


def reset():
    window.count = 0
    lbl.configure(text=window.count)


# 给窗口用到的行列配置权重,让剩余空间均匀分配
window.grid_columnconfigure(0, weight=1)
window.grid_columnconfigure(1, weight=1)
window.grid_rowconfigure(0, weight=1)
window.grid_rowconfigure(1, weight=1)

lbl = Label(window, text="0", font=("Apple Braille", 60))
# 标签设置跨2列,和下方两个按钮的总宽度对齐
lbl.grid(column=0, row=0, columnspan=2)

btn1 = Button(window, text="Count", command=increment)
btn1.grid(column=0, row=1)

btn2 = Button(window, text="Reset", command=reset)
btn2.grid(column=1, row=1)

btn1['font'] = btn2['font'] = font.Font(size=30)

window.mainloop()

修改的核心逻辑:

  • 计数标签新增columnspan=2参数,横跨下方两个按钮所在的两列,保证标签水平方向和按钮组对齐
  • 给窗口用到的所有行列配置相同的weight值,窗口剩余空间会均匀分配到各行列,控件自然处于窗口居中位置
  • 若需要调整控件之间的间距,可在grid方法中添加padx、pady参数自定义边距。

内容的提问来源于stack exchange,提问作者A S Adithiyaa

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.30 01:27:04