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

Tkinter如何实现两个按钮的延伸效果 新手开发问题求助

Tkinter双按钮延伸效果实现方案

你要的两个按钮横向铺满父容器、各自延伸占满一半宽度的效果可以通过grid布局配合权重配置实现,以下是可直接运行的完整代码:

import tkinter as tk
from tkinter import ttk

# 初始化主窗口
root = tk.Tk()
root.title("双按钮延伸演示")
root.geometry("400x200")

# 创建放置按钮的容器,固定在窗口底部,横向铺满
btn_container = ttk.Frame(root)
btn_container.pack(side="bottom", fill="x", padx=12, pady=15)

# 给容器的两列设置相同权重,实现宽度平分
btn_container.columnconfigure(0, weight=1)
btn_container.columnconfigure(1, weight=1)

# 生成两个按钮,铺满各自分配的单元格
confirm_btn = ttk.Button(btn_container, text="确认")
confirm_btn.grid(row=0, column=0, padx=(0, 6), sticky="nsew")

cancel_btn = ttk.Button(btn_container, text="取消")
cancel_btn.grid(row=0, column=1, padx=(6, 0), sticky="nsew")

root.mainloop()

核心配置说明

  • columnconfigure设置的weight值决定了列分配剩余空间的比例,两列weight都为1时就会平分容器宽度
  • sticky="nsew"参数让按钮向单元格的上下左右四个方向延伸,完全填满分配到的空间
  • 两个按钮的padx参数用来控制按钮之间的间距,你可以根据需求调整数值

如果你需要修改按钮的颜色、字体、圆角等样式,可以通过ttk.Style自定义组件样式,或者直接使用tk原生Button的相关参数调整即可。

内容的提问来源于stack exchange,提问作者Huy Vu Quang

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.07 23:00:01