我的程序使用用户在Tkinter中输入的pointSize_max
和pointSize
变量绘制分形。问题是,分形是在按下按钮之前绘制的(只要程序运行),而程序在按下按钮时不会绘制分形。你知道吗
pointLabel = tk.Label(frame,text="minimaalne pikkus")
pointLabel.pack()
pointSize = tk.StringVar()
pointEntry = tk.Entry(frame,textvariable=pointSize)
pointEntry.pack()
pointSize.set(str(10))
pointLabel_max = tk.Label(frame,text="maksimaalne pikkus")
pointLabel_max.pack()
pointSize_max = tk.StringVar()
pointEntry_max = tk.Entry(frame,textvariable=pointSize_max)
pointEntry_max.pack()
pointSize_max.set(str(30))
drawButton = tk.Button(frame, text = "Draw a fractal", command=koch(int(pointSize_max.get()), int(pointSize.get())))
# koch function draws the fractal
drawButton.pack()
tk.mainloop()
在编译脚本时,它会到达此行并运行函数,因为您正在调用它:
尝试使用lambda来防止这种情况发生:
在创建按钮时调用
koch
函数,作为tk.Button
调用之前参数计算的一部分。您可以创建一个要调用的函数对象。你知道吗相关问题 更多 >
编程相关推荐