-1
I’m trying to do in python a program that gives some food options to Sario and then saves them in a notepad, but is giving error, what is wrong?
error: Exception in Tkinter callback Traceback (Most recent call last): File "C: Users Home Appdata Local Programs Python Python38 lib tkinter__init__.py", line 1883, in call Return self.func(*args) File "C: Users Home Appdata Local Programs Python Python38 lib tkinter__init__.py", line 3941, in call self. __var.set(self.__value) Attributeerror: 'Nonetype' Object has no attribute 'set'
from tkinter import *
janela = Tk()
janela.title("McDonald's")
def salvar_dados():
f = open("pedidos.txt", "a")
f.write(f"Nome: {nome.get()}\n")
f.write(f"Pão: {pao.get()}\n")
f.write(f"Carne: {carne.get()}\n")
f.write(f"Salada: {salada.get()}\n")
f.write(f"Tempero: {tempero.get()}\n")
f.write(f"Condimentos: {condimentos.get()}\n")
f.write(f"Acompanhamentos: {acompanhamentos.get()}\n")
f.write(f"Bebidas: {bebidas.get()}\n")
f.write(f"Observação: {observacao.get()}\n")
#nome.set("Araras")
nome.delete(0, END)
observacao.delete("1.0", END)
f.close()
def ler_pao(arquivo):
leit1 = []
f = open(arquivo, encoding="utf8")
for linha in f: leit1.append(linha.rstrip())
f.close()
leit1.sort()
return leit1
def ler_carne(arquivo):
leit2 = []
f = open(arquivo, encoding="utf8")
for linha in f: leit2.append(linha.rstrip())
f.close()
leit2.sort()
return leit2
def ler_salada(arquivo):
leit3 = []
f = open(arquivo, encoding="utf8")
for linha in f: leit3.append(linha.rstrip())
f.close()
leit3.sort()
return leit3
def ler_tempero(arquivo):
leit4 = []
f = open(arquivo, encoding="utf8")
for linha in f: leit4.append(linha.rstrip())
f.close()
leit4.sort()
return leit4
def ler_condimentos(arquivo):
leit5 = []
f = open(arquivo, encoding="utf8")
for linha in f: leit5.append(linha.rstrip())
f.close()
leit5.sort()
return leit5
def ler_acompanhamentos(arquivo):
leit6 = []
f = open(arquivo, encoding="utf8")
for linha in f: leit6.append(linha.rstrip())
f.close()
leit6.sort()
return leit6
def ler_bebidas(arquivo):
leit7 = []
f = open(arquivo, encoding="utf8")
for linha in f: leit7.append(linha.rstrip())
f.close()
leit7.sort()
return leit7
pedido_txt = "pedidos.txt"
paon = "Escolha o pão"
carnen = "Escolha a carne"
salan = "Escolha a salada"
tempn = "Escolha o tempero"
condin = "Escolha os condimentos"
acomn = "Escolha os acompanhamentos"
bebn = "Escolha as bebidas"
p1 = Label(janela, text="Pão: ").pack()
pao = StringVar()
pao.set(paon)
op1 = ler_pao("pao.txt")
OptionMenu(janela, p1, *op1).pack()
p2 = Label(janela, text="Carne: ").pack()
carne = StringVar()
carne.set(carnen)
op2 = ler_carne("carne.txt")
OptionMenu(janela, p2, *op2).pack()
p3 = Label(janela, text="Salada: ").pack()
salada = StringVar()
salada.set(salan)
op3 = ler_salada("salad.txt")
OptionMenu(janela, p3, *op3).pack()
p4 = Label(janela, text="Tempero: ").pack()
tempero = StringVar()
tempero.set(tempn)
op4 = ler_tempero("temp.txt")
OptionMenu(janela, p4, *op4).pack()
p5 = Label(janela, text="Condimentos: ").pack()
condimentos = StringVar()
condimentos.set(condin)
op5 = ler_condimentos("condi.txt")
OptionMenu(janela, p5, *op5).pack()
p6 = Label(janela, text="Acompanhamentos: ").pack()
acompanhamentos = StringVar()
acompanhamentos.set(acomn)
op6 = ler_acompanhamentos("acom.txt")
OptionMenu(janela, p6, *op6).pack()
p7 = Label(janela, text="Bebidas: ").pack()
bebidas = StringVar()
bebidas.set(bebn)
op7 = ler_bebidas("beb.txt")
OptionMenu(janela, p7, *op7).pack()
n = Label(janela, text="Nome: ").pack()
nome = Entry(janela)
nome.pack()
obs = Label(janela, text="Observação: ").pack()
observacao = Entry(janela)
observacao.pack()
sv = Button(janela, text="Salvar", command=salvar_dados)
sv.pack()
janela.mainloop()