#导入模块
from tkinter import *
#创建完善信息窗口
def ra():
winra = Tk()
winra.title('收入信息完善')
winra.geometry('300x150')
winra_a = Label(winra, text = '请输入金额')
winra_a.pack()
winra_b = Entry(winra)
winra_b.pack()
winra_c = Label(winra, text = '请输入收入备注')
winra_c.pack()
winra_d = Entry(winra, width = 40)
winra_d.pack()
winra_e = Button(winra, text = '确认', relief = 'groove', width = 8, command = wr_e)
winra_e.pack()
#读取并保存收入信息
def wr_e():
var_id1= winra_b.get()
var_id2= winra_d.get()
f = open('file.txt','a+', encoding='utf-8')
f.write(winra_b + '\n')
f.write(winra_d + '\n')
#创建用户图形界面
root = Tk()
root.title('财务通')
root.geometry('500x625')
root.resizable(0, 0)
#显示图标
icon = PhotoImage(file = 'icons.gif')
background = Label(root, image = icon)
background.pack()
#菜单
menubar = Menu(root)
menubar.add_command(label = '保存')
menubar.add_command(label = '退出', command = root.quit)
root.config(menu = menubar)
#显示按钮
revenue_addition = Button(root, text = '收入添加', relief = 'groove', command = ra)
revenue_addition.pack()
revenue_addition = Button(root, text = '支出添加', relief = 'groove', command = ra)
revenue_addition.pack()
revenue_addition = Button(root, text = '收支详情', relief = 'groove', command = ra)
revenue_addition.pack()
root.mainloop()
运行上述代码,在完善好信息以后,单击“确定”按钮时,会有bug,怎么回事?
Exception in Tkinter callback
Traceback (most recent call last):
File "D:\lib\tkinter\__init__.py", line 1705, in __call__
return self.func(*args)
File "C:/Users/TuHaoJia/Desktop/财务通/财务通.py", line 21, in wr_e
var_id1= winra_b.get()
NameError: name 'winra_b' is not defined