Tkinter开发井字棋添加下方Label后按钮向两侧偏移如何修复
Tkinter井字棋按钮偏移修复方案
问题原因
Tkinter的grid布局默认会自动调整每列宽度为该列下所有控件的最大宽度,你的提示Labelmessages设置了width=15,仅放置在第1列,会直接把中间列撑得远宽于左右两列,最终导致上方的整行按钮向两侧偏移。
修复方案
只需要修改控件布局的代码即可:
- 删除无用的占位
spaceLabel相关代码,要留底部间隔直接用pady参数即可 - 给
messages的grid方法添加columnspan=3参数,让它横跨棋盘的3列,不会单独撑宽中间列
修改后的布局代码如下:
# 原有按钮布局代码保持不变 b1.grid(row=0, column=0) b2.grid(row=0, column=1) b3.grid(row=0, column=2) b4.grid(row=1, column=0) b5.grid(row=1, column=1) b6.grid(row=1, column=2) b7.grid(row=2, column=0) b8.grid(row=2, column=1) b9.grid(row=2, column=2) # 修改后的提示Label布局:columnspan=3让它占满3列,pady添加顶部间隔 messages.grid(row=3, column=0, columnspan=3, pady=10)
如果需要提示文字在底部居中,可以额外添加sticky="ew"参数,保证文字在整个底部区域居中显示。
内容的提问来源于stack exchange,提问作者Noam Aharoni
相关产品推荐
相关产品推荐

