我只做了一点工作与Tkinter和我喜欢使用它,但与任何类型的编程一样,它需要时间来学习。我正在尝试创建一个简单的待办事项列表,最终将保存在一个文件中。但是我不能让第17行的按钮被移除,下一行的按钮被替换到另一个位置。在
from tkinter import *
import time
root = Tk()
root.geometry("300x300")
root.title("Programs")
global TDrow
TDrow = 2
def tdTaskAdd():
global TDrow
global tdEnter
TDrow = int(TDrow+1)
s = tdEntry.get()
label = Label(ToDoFrame,text=s).grid(row=TDrow,column=1)
tdEntry.grid(row=TDrow+1,column=1)
tdEnter.grid_remove()
tdEnter = Button(ToDoFrame,text="AddTask",command=tdTaskAdd).grid(row=TDrow+2,column=1)
ToDoFrame = Frame()
ToDoFrame.place(x=0,y=10)
tdTitle = Label(ToDoFrame,text="To Do List:").grid(row=TDrow-1,column=1)
tdEntry= Entry(ToDoFrame)
tdEntry.grid(row=TDrow+1,column=1)
tdEntry.insert(0, "Enter a new task")
global tdEnter
tdEnter = Button(ToDoFrame,text="Add Task",command=tdTaskAdd).grid(row=TDrow+2,column=1)
mainloop()
运行此命令时,我一直收到一个错误:
^{pr2}$
问题是这条线:
这样,
tdEnter
不是Button
,而是grid
的返回值,即None
。在试试这个:
^{pr2}$对于
label
和在tdAddTask
函数中创建新按钮时也是如此。在顺便说一句,不需要每次都添加一个新按钮,只需调用它的
grid
方法来重新定位它。在相关问题 更多 >
编程相关推荐