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

如何在Tkinter网格布局中单独放大指定单元格?

可行,调整网格布局参数就能实现目标样式,修改后的代码如下:
import random
from tkinter import *

root = Tk()
root.title("TOMBOLA")
root.resizable(0, 0)
root.config(bg="WHITE")

# 第一行:标签、输入框、OK按钮
texto = Label(root, text="Introduce el nombre para agregar a la tómbola:", font=("Courier"))
texto.grid(column=0, row=0, padx=(10,0), sticky=W)  # 左对齐标签

entry = Entry(root, width=40)
entry.focus_set()
# 让输入框占据列1和列2,填充中间宽度
entry.grid(column=1, row=0, columnspan=2, padx=25, sticky=EW)

boton_ok = Button(root, text="OK", width=10, height=2)
boton_ok.grid(row=0, column=3, padx=10, pady=(25,0))

# 第二行:横跨整行的INICIAR按钮
boton_sig = Button(root, text="INICIAR TOMBOLA")
# 按钮横跨4列(0-3),并横向拉伸填满空间
boton_sig.grid(column=0, row=1, columnspan=4, pady=(15,15), sticky=EW, padx=10)

# 第三行:Lista标签和显示区域
listaindic = Label(root, text="Lista: ")
listaindic.grid(row=2, column=0, padx=(10,0), sticky=W)

display = Label(root, text="", bg="#f0f0f0", relief=SUNKEN, width=50)
# 显示区域占据列1到列3,拉伸填充剩余空间
display.grid(row=2, column=1, columnspan=3, padx=10, pady=(0,15), sticky=EW)

# 配置列权重,让可拉伸元素合理分配空间
for col in range(4):
    root.grid_columnconfigure(col, weight=1)

root.mainloop()

修改说明:

  • 给输入框设置columnspan=2,让它占据更多列宽,贴合目标布局
  • 把"INICIAR TOMBOLA"按钮的columnspan=4,配合sticky=EW实现横向铺满整行
  • 将Lista标签和显示区域下移到第三行,显示区域设置columnspan=3确保足够宽度
  • 用grid_columnconfigure配置列权重,让元素在网格内均匀分布
  • 调整sticky属性统一元素对齐方式,匹配目标样式的排版逻辑

内容的提问来源于stack exchange,提问作者Fire Frekox

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.04 02:05:18