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

Tkinter待办列表添加按钮仅下移一次后固定,grid(row=)不更新问题求助

问题分析与解决方法

问题核心:你仅在初始化时给添加按钮设置了一次grid布局的行位置,后续var2变量虽然自增,但按钮的布局参数不会自动更新,所以只会下移一次后固定。

修改方案

  1. 先将添加按钮实例化为变量,避免直接链式调用grid导致无法后续修改布局
  2. 在add_new_check函数中,每次更新var2后,重新调用按钮的grid方法更新行位置

修改后的代码:

import tkinter as tk  

root = tk.Tk()
root.geometry("160x270")

var1 = 0
var2 = 1

def add_new_check():
    global var1, var2
    tk.Entry().grid(row=var1, column=1)
    tk.Checkbutton().grid(row=var1, column=0)
    var1 += 1
    var2 += 1
    # 每次添加后更新按钮的行位置
    add_btn.grid(row=var2, columnspan=5)

add_new_check()

# 先实例化按钮再设置初始布局
add_btn = tk.Button(root, font=('Arial', 10), text="+", command=add_new_check)
add_btn.grid(row=var2, columnspan=5)

root.mainloop()

这样每次点击添加按钮后,都会重新设置按钮的行号为最新的var2值,按钮就能随待办项的增加持续下移。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.27 20:57:55