我想创建一个程序,当您单击一个按钮时,它将存储要在另一个函数中使用的变量。我认为错误出在函数calcular
中,当我按下它时,它说未定义一个或多个变量
enter image description here
calculadora = Tk()
calculadora.title('THE MAZE - CALCULADORA DE DANOS')
Label(calculadora, text='ATRIBUTOS').grid(row=0,column=1)
Label(calculadora, text='AGILIDADE').grid(row=1,column=0)
Label(calculadora, text='CORPO A CORPO').grid(row=2,column=0)
Label(calculadora, text='DESTREZA').grid(row=3,column=0)
Label(calculadora, text='PRECISÃO').grid(row=4,column=0)
Label(calculadora, text='PARANORMALIDADE').grid(row=5,column=0)
Label(calculadora, text='SORTE').grid(row=6,column=0)
Label(calculadora, text='ESCALA').grid(row=0,column=2)
Label(calculadora, text='DESCRIÇÃO').grid(row=0,column=3)
agi = Entry(calculadora)
cac = Entry(calculadora)
des = Entry(calculadora)
pre = Entry(calculadora)
par = Entry(calculadora)
sor = Entry(calculadora)
agi.grid(row=1,column=1)
cac.grid(row=2,column=1)
des.grid(row=3,column=1)
pre.grid(row=4,column=1)
par.grid(row=5,column=1)
sor.grid(row=6,column=1)
show_agi = Label(calculadora, text='-')
show_cac = Label(calculadora, text='-')
show_des = Label(calculadora, text='-')
show_pre = Label(calculadora, text='-')
show_par = Label(calculadora, text='-')
show_sor = Label(calculadora, text='-')
show_descricao = Label (calculadora, text='-')
show_agi.grid(row=1,column=2)
show_cac.grid(row=2,column=2)
show_des.grid(row=3,column=2)
show_pre.grid(row=4,column=2)
show_par.grid(row=5,column=2)
show_sor.grid(row=6,column=2)
show_descricao.grid(row=1,column=3,columnspan=2,rowspan=2,sticky=W+E+N+S,padx=5,pady=5)
def baralho():
base = 10
agi_escala = 0
cac_escala = 0
des_escala = 1
pre_escala = 1.5
par_escala = 1.5
sor_escala = 1.5
descricao = ' Sem descrição '
show_agi['text'] = agi_escala
show_cac['text'] = cac_escala
show_des['text'] = des_escala
show_pre['text'] = pre_escala
show_par['text'] = par_escala
show_sor['text'] = sor_escala
show_descricao['text'] = descricao
def calcular():
get_agi = float(agi.get())
get_cac = float(cac.get())
get_des = float(des.get())
get_pre = float(pre.get())
get_par = float(par.get())
get_sor = float(sor.get())
dano = (base+((get_agi*agi_escala)+(get_cac*cac_escala)+(get_des*des_escala)+(get_pre*pre_escala)+(get_par*par_escala)+(get_sor*sor_escala)))
val["text"] = dano
cal = Button(calculadora, text='CALCULAR', command=calcular)
cal.grid(row=7,column=0)
val = Label(calculadora, text='DANO')
val.grid(row=7,column=1)
armas = Menubutton(calculadora, text='ARMAS', relief='raised')
armas.menu = Menu(armas)
armas["menu"] = armas.menu
armas.menu.add_command(label='Baralho de Tarô', command=baralho)
armas.menu.add_command(label='varinha')
armas.grid(row=0,column=0)
calculadora.mainloop()
我希望通过单击armas
菜单并选择选项,用户可以进行计算,查看描述及其值