import tkinter as tk
from functools import partial
tempVal = "Graduação"
def store_temp(sel_temp):
global tempVal
tempVal = sel_temp
def call_convert(rlabel1, inputn):
try:
taxa_matricula_graduacao = 500
taxa_matricula_pos_graduacao = 800
tem = int(inputn.get())
if tempVal == 'Graduação':
propinas = tem * 100 + taxa_matricula_graduacao
rlabel1.config(text=f"O valor das propinas é: € {propinas}")
if tempVal == 'Pós-Graduação':
propinas = tem * 150 + taxa_matricula_pos_graduacao
rlabel1.config(text=f"O valor das propinas é: € {propinas}")
except ValueError:
rlabel1.config(text="Erro: Insira um valor numérico válido.")
root = tk.Tk()
root.geometry('400x300')
root.title('Calculadora de Propinas')
root.configure(background='#09A3BA')
root.resizable(width=False, height=False)
root.grid_columnconfigure(1, weight=1)
root.grid_rowconfigure(0, weight=1)
numberInput = tk.StringVar()
var = tk.StringVar()
titulo = tk.Label(root, text="Calculadora de Propinas", background='#09A3BA',
foreground="#FFFFFF", font=("Arial", "20", "bold"))
titulo.place(relx=0.1, rely=0.05)
input_label = tk.Label(root, text="Números de Créditos", background='#09A3BA',
foreground="#FFFFFF", font=("Arial", "15", "bold"))
input_entry = tk.Entry(root, textvariable=numberInput)
input_label.place(relx=0.1, rely=0.25)
input_entry.place(relx=0.65, rely=0.27)
result_label1 = tk.Label(root, background='#09A3BA', foreground="#FFFFFF", font=("Arial", "14", "bold"))
result_label1.place(relx=0.15, rely=0.85)
dropDownList = ["Graduação", "Pós-Graduação"]
dropdown = tk.OptionMenu(root, var, *dropDownList, command=store_temp)
var.set(dropDownList[0])
dropdown.place(relx=0.35, rely=0.4)
dropdown.config(background='#09A3BA', foreground="#FFFFFF", font=("Arial", "14", "bold"))
dropdown["menu"].config(background='#09A3BA', foreground="#FFFFFF", font=("Arial", "12", "bold"))
call_convert = partial(call_convert, result_label1, numberInput)
result_button = tk.Button(root, text="Calcular", command=call_convert, background='#09A3BA',
foreground="#FFFFFF", font=("Arial", "14", "bold"))
result_button.place(relx=0.4, rely=0.6)
root.mainloop()