gpt4 book ai didi

python - 在 tkinter 中,每次按下按钮时如何生成新行?

转载 作者:行者123 更新时间:2023-12-01 05:50:46 24 4
gpt4 key购买 nike

我编写了这段代码,当按下按钮时,一个输入框会出现在新行上,但我不确定如何让它在最后一个下方的新行上创建新条目。我的主要问题是如何在函数内增加 row_number 变量而不在每次调用函数时重新设置它,以及如何使函数在每次调用时为“new_entry”对象提供新名称,以便它不会不要覆盖自身。

def new_row():
#Create widgets
new_entry = ttk.Entry(root, width=7)

#Put widgets in grid
new_entry.grid(column=0, row=2, sticky=(W, E))

root = Tk()
createRow_button = ttk.Button(root, text='New Row', command=new_row)
createRow_button.grid()

root.mainloop

这是我第一次在 Stack Overflow 上提问,如果有什么问题,很抱歉。

最佳答案

使用类并将行数存储为类属性,self.num_rows:

import Tkinter as tk


class App(object):
def new_row(self):
# Create widgets
new_entry = tk.Entry(root, width=7)

# Put widgets in grid
self.num_rows += 1
new_entry.grid(column=0, row=self.num_rows, sticky='WE')

def __init__(self):
self.num_rows = 1
createRow_button = tk.Button(
root, text='New Row', command=self.new_row)
createRow_button.grid()

root = tk.Tk()
app = App()
root.mainloop()

关于python - 在 tkinter 中,每次按下按钮时如何生成新行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14397846/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com