from tkinter import *
def limpar():
Velocidade_marcado_entrada.delete(0, END)
Limite_estrada_entrada.delete(0, END)
resultado_texto.config(text="")
def app():
try:
local = var.get()
velocidade = int(Velocidade_marcado.get())
limite = int(Limite_estrada.get())
if velocidade <= limite:
mensagem = "Não tem multa"
else:
diferenca = velocidade - limite
print(diferenca)
if local == "Dentro das localidades":
if diferenca <= 20:
mensagem = "Valor da multa: de 60 a 300 euros"
elif diferenca <= 40:
mensagem = "Valor da multa: de 120 a 600 euros"
elif diferenca <= 60:
mensagem = "Valor da multa: de 300 a 1.500 euros"
else:
mensagem = "Valor da multa: de 500 a 2.500 euros"
else:
if diferenca <= 30:
mensagem = "Valor da multa: de 60 a 300 euros"
elif diferenca <= 60:
mensagem = "Valor da multa: de 120 a 600 euros"
elif diferenca <= 80:
mensagem = "Valor da multa: de 300 a 1.500 euros"
else:
mensagem = "Valor da multa: de 500 a 2.500 euros"
resultado_texto.config(text=mensagem)
except ValueError:
resultado_texto.config(text="Valor digitado inválido! Por favor, insira números válidos.")
root = Tk()
root.geometry("500x500")
root.resizable(0, 0)
root.config(bg="#103030")
root.title("Calcular Multa")
titulo = Label(text="Calcular Multa",
font=("Arial", "40", "bold"), bg="#103030", fg="#49e3e3")
titulo.place(relx=0.15, rely=0.05)
var = StringVar()
lista = ["Dentro das localidades", "Fora das localidades"]
dropdown = OptionMenu(root, var, *lista)
var.set("Dentro das localidades")
dropdown.place(relx=0.2, rely=0.2)
dropdown.config(background='#09A3BA', foreground="#FFFFFF", font=("Arial", "15", "bold"))
dropdown["menu"].config(background='#09A3BA', foreground="#FFFFFF", font=("Arial", "18", "bold"))
texto_sub1 = Label(text="Limite da estrada:",
font=("Arial", "18", "bold"), bg="#103030", fg="#49e3e3")
texto_sub1.place(relx=0.05, rely=0.35)
texto_sub2 = Label(text="Velocidade marcada:",
font=("Arial", "18", "bold"), bg="#103030", fg="#49e3e3")
texto_sub2.place(relx=0.05, rely=0.5)
Limite_estrada = StringVar()
Limite_estrada_entrada = Entry(textvariable=Limite_estrada,
font=("Arial", "12", "bold"),
bg="white", fg="blue", justify='center')
Limite_estrada_entrada.place(relx=0.55, rely=0.36, relwidth=0.35)
Velocidade_marcado = StringVar()
Velocidade_marcado_entrada = Entry(textvariable=Velocidade_marcado,
font=("Arial", "12", "bold"),
bg="white", fg="blue", justify='center')
Velocidade_marcado_entrada.place(relx=0.55, rely=0.51, relwidth=0.35)
but1 = Button(text="Calcular", bd=2, bg='#107db2', fg='white',
font=('verdana', 12, 'bold'), command=app)
but1.place(relx=0.1, rely=0.65, relwidth=0.25, relheight=0.1)
but_limpar = Button(text="Limpar", bd=2, bg='#107db2', fg='white',
font=('verdana', 12, 'bold'), command=limpar)
but_limpar.place(relx=0.4, rely=0.65, relwidth=0.25, relheight=0.1)
but_sair = Button(text="Sair", bd=2, bg='#107db2', fg='white',
font=('verdana', 12, 'bold'), command=root.destroy)
but_sair.place(relx=0.7, rely=0.65, relwidth=0.25, relheight=0.1)
resultado_texto = Label(text="",
font=("Arial", 12, "bold"), bg="#cfe2f3")
resultado_texto.place(relx=0.05, rely=0.8, relwidth=0.9, relheight=0.15)
root.mainloop()