from tkinter import *
biografias = {
"Rui Costa": {
"nome_completo": "Rui Manuel César Costa",
"data_nascimento": "29 de março de 1972",
"naturalidade": "Amadora, Portugal",
"profissão": "Ex-futebolista e dirigente desportivo",
"biografia": (
"Rui Costa é um antigo médio ofensivo português, reconhecido pela sua visão de jogo, "
"qualidade técnica e elegância em campo. Formou-se no Sport Lisboa e Benfica, clube "
"pelo qual se destacou ainda jovem. Transferiu-se para a Fiorentina, em Itália, em 1994, "
"onde se tornou ídolo dos adeptos. Posteriormente, jogou no AC Milan, conquistando títulos "
"importantes como a Liga dos Campeões. Regressou ao Benfica para terminar a carreira em 2008. "
"Após pendurar as botas, dedicou-se à gestão desportiva, sendo atualmente presidente do Benfica."
)
},
"João Noronha Lopes": {
"nome_completo": "João Maria do Carmo de Noronha Lopes",
"data_nascimento": "10 de junho de 1966",
"naturalidade": "Lisboa, Portugal",
"profissão": "Gestor e empresário",
"biografia": (
"João Noronha Lopes é um gestor português com uma carreira de destaque em cargos de liderança "
"internacionais. Licenciado em Direito, trabalhou em várias empresas de renome, nomeadamente na "
"McDonald’s, onde exerceu funções de direção para Portugal e outras regiões europeias. É também "
"consultor e CEO da PB Consulting. Benfiquista desde jovem, apresentou-se como candidato à presidência "
"do Sport Lisboa e Benfica, defendendo uma gestão mais transparente e moderna para o clube."
)
}
}
root = Tk()
root.geometry("800x500")
root.resizable(0, 0)
root.config(bg="#103030")
root.title("Candidatos do Benfica - Segunda Volta")
titulo = Label(
text="Candidatos do Benfica",
font=("Arial", 28, "bold"),
bg="#103030",
fg="#49e3e3"
)
titulo.place(relx=0.2, rely=0.05)
texto_sub1 = Label(
text="Escolha o candidato:",
font=("Arial", 18, "bold"),
bg="#103030",
fg="#49e3e3"
)
texto_sub1.place(relx=0.05, rely=0.25)
var = StringVar()
dropDownList = ["Rui Costa", "João Noronha Lopes"]
var.set(dropDownList[0])
dropdown = OptionMenu(root, var, *dropDownList)
dropdown.place(relx=0.45, rely=0.25, relwidth=0.45)
dropdown.config(background='#09A3BA', foreground="#FFFFFF", font=("Arial", 16, "bold"))
dropdown["menu"].config(background='#09A3BA', foreground="#FFFFFF", font=("Arial", 14, "bold"))
def limpar():
resultado_texto.delete("1.0", END)
def app(event=None): # <— event=None permite funcionar com o Enter e o botão
resultado_texto.delete("1.0", END)
nome = var.get()
if nome in biografias:
info = biografias[nome]
mensagem = (
f"Biografia de {nome}\n\n"
f"Nome completo: {info['nome_completo']}\n"
f"Data de nascimento: {info['data_nascimento']}\n"
f"Naturalidade: {info['naturalidade']}\n"
f"Profissão: {info['profissão']}\n\n"
f"{info['biografia']}"
)
resultado_texto.insert(END, mensagem)
but1 = Button(
text="Mostrar", bd=2, bg='#107db2', fg='white',
font=('Verdana', 12, 'bold'), command=app
)
but1.place(relx=0.1, rely=0.4, 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.4, 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.4, relwidth=0.25, relheight=0.1)
# Frame para o texto e scrollbar
frame_texto = Frame(root, bg="#103030")
frame_texto.place(relx=0.05, rely=0.55, relwidth=0.9, relheight=0.4)
# Scrollbar
scrollbar = Scrollbar(frame_texto)
scrollbar.pack(side=RIGHT, fill=Y)
# Área de texto com scrollbar
resultado_texto = Text(
frame_texto,
font=("Arial", 12),
bg="#cfe2f3",
wrap=WORD,
yscrollcommand=scrollbar.set
)
resultado_texto.pack(side=LEFT, fill=BOTH, expand=True)
scrollbar.config(command=resultado_texto.yview)
root.bind("<Return>", app)
root.mainloop()