def table2(): window = tk.Tk()# 这是主窗口,也就是所说的初始界面 window = tk.Toplevel() window.title("欢迎使用本系统") # 窗口名 window.geometry("1000x750") # 窗口大小 # 手机号、身份证号、年龄、出生日期 data = [ {"手机号": "18845298308", "身份证号": "110101199001011234", "年龄": 31, "出生日期": "1990-01-01"}, {"手机号": "13836277378", "身份证号": "110101199002022345", "年龄": 20, "出生日期": "2002-10-25"}]def show_original_data(): global data data = [ {"手机号": "18845298308","身份证号": "110101199001011234", "年龄": 31, "出生日期": "1990-01-01"}, {"手机号": "13836277378", "身份证号": "110101199002022345", "年龄": 20, "出生日期": "2002-10-25"}]show_data()replace_unmask_btn = Button(window, text="还原", font=("微软雅黑 -20"),bg='pink', command=show_original_data) replace_unmask_btn.place(x=180,y=420)def show_data(): # 清空列表框 listbox.delete(0, END) # 显示表头 listbox.insert(END, "{:<15s}{:<25s}{:<5s}{}".format("手机号", "身份证号", "年龄", "出生日期")) # 显示数据 for i in range(len(data)): listbox.insert(END, "{:<15s}{:<25s}{:<5d}{}".format( data[i]["手机号"], data[i]["身份证号"], data[i]["年龄"], data[i]["出生日期"] )) # 创建列表框 listbox = Listbox(window, width=60, height=20) listbox.grid(row=0, column=0, columnspan=4) # 显示数据 show_data()点击还原的按钮没有反应,不能更新列表框中的数据是怎么回事
时间: 2023-07-19 16:55:14 浏览: 56
算法编程试题==.docx
根据你提供的代码,我发现在 show_original_data() 函数中虽然改变了全局变量 data 的值,但是没有调用 show_data() 函数来更新列表框中的数据。因此,点击还原的按钮没有反应,不能更新列表框中的数据。你需要在 show_original_data() 函数中添加一行代码来调用 show_data() 函数来更新列表框中的数据。可以将代码修改为:
```
def show_original_data():
global data
data = [
{"手机号": "18845298308","身份证号": "110101199001011234", "年龄": 31, "出生日期": "1990-01-01"},
{"手机号": "13836277378", "身份证号": "110101199002022345", "年龄": 20, "出生日期": "2002-10-25"}
]
show_data() # 添加这一行来更新列表框中的数据
```
这样就能够更新列表框中的数据了。
阅读全文