python - 恢复 tkinter 画布上的文本和输入框
问题描述
在此代码中,输入一个整数并单击处理按钮会显示多个输入框。我希望后退按钮充当恢复按钮,使输入框消失并将 GUI 恢复到原始状态。我怎样才能做到这一点?
import tkinter as tk
import tkinter.ttk as ttk
hht=[]
tks = []
window = tk.Tk()
def open_window(pll):
numh = int(pll)
l0 = tk.Label(canvas, text="H T", font="Calibri 12", bg="white")
canvas.create_window(390,125, window=l0, anchor=tk.NW)
for i in range(numh):
hht.append(tk.StringVar())
tks.append(tk.StringVar())
en = ttk.Entry(canvas, textvariable = hht[i])
en.config({"background": "gainsboro"})
canvas.create_window(350, 150+i*25, window=en, anchor=tk.NW)
aen = ttk.Entry(canvas, textvariable = tks[i])
aen.config({"background": "gainsboro"})
canvas.create_window(500, 150+i*25, window=aen, anchor=tk.NW)
ws = window.winfo_screenwidth()
hs = window.winfo_screenheight()
w = 700 # width for the Tk root
h = 410 # height for the Tk root
x = (ws / 2) - (w / 2)
y = (hs / 2) - (h / 2)
window.geometry('%dx%d+%d+%d' % (w, h, x, y))
canvas = tk.Canvas(window,bg="white",width=700, height=410, highlightthickness=0)
canvas.pack()
l13= tk.Label(canvas, text="Enter Numbers", font="Calibri 16", bg="white")
canvas.create_window(300,8, window=l13, anchor=tk.NW)
l0 = tk.Label(canvas, text="Entry", font="Calibri 12", bg="white")
canvas.create_window(15,58, window=l0, anchor=tk.NW)
PLz = tk.DoubleVar()
entry_PLz = ttk.Entry(canvas, textvariable=PLz)
entry_PLz.config({"background": "gainsboro"})
canvas.create_window(270,70, window=entry_PLz)
submit_button = ttk.Button(canvas, text="Process >>", command=lambda: open_window(PLz.get()))
canvas.create_window(300, 100, window=submit_button, anchor=tk.NW)
back_button = ttk.Button(canvas, text="Back")
canvas.create_window(450, 100, window=back_button, anchor=tk.NW)
window.resizable(False, False)
window.mainloop()
解决方案
推荐阅读
- ios - UICollectionview.performBatchUpdates 更新块不需要在捕获列表中显式使用 self
- forms - React Native - 嵌套对象状态表单构建
- javascript - BigInt 是否代表 64 位的数字?
- python - 在 K 形聚类之后重塑阵列
- reactjs - 如何在反应中禁用所有子组件?
- performance - Odoo14 - 关于limit_memory soft和hard的问题
- python - 如何为熊猫散布颜色参数使用几个分类列
- reactjs - 随后(在上下文中)使属性发生突变的多个组件仅导致一个有效的突变
- highcharts - HighChart 股票工具不适用于单个数据系列图表
- parallel-processing - GNU 并行:限制每个作业的 CPU 和 RAM