from tkinter import *
import re
import datetime
root = Tk()
root.geometry("400x400")
root.resizable(0, 0)
root.config(bg="#103030")
root.title("Saudação")
titulo = Label(text="Saudação",
font=("Arial", "38", "bold"), bg="#103030", fg="#49e3e3")
titulo.place(relx=0.18, rely=0.05)
sub1 = Label(text="Nome do Pai: ", font=("Arial", "18", "bold"), bg="#103030", fg="#49e3e3")
sub1.place(relx=0.05, rely=0.25)
nome_pai = StringVar()
nome_pai_entrada = Entry(textvariable=nome_pai, font=("Arial", "12", "bold"),
bg="white", fg="blue", justify='center')
nome_pai_entrada.place(relx=0.45, rely=0.26, relwidth=0.53)
nome_pai_entrada.focus()
sub2 = Label(text="Nome da Mãe: ", font=("Arial", "18", "bold"), bg="#103030", fg="#49e3e3")
sub2.place(relx=0.03, rely=0.4)
nome_mae = StringVar()
nome_mae_entrada = Entry(textvariable=nome_mae, font=("Arial", "12", "bold"),
bg="white", fg="blue", justify='center')
nome_mae_entrada.place(relx=0.45, rely=0.42, relwidth=0.53)
def validar_nome(nome):
return re.match("^[a-zA-Z ]+$", nome)
def limpar():
nome_mae_entrada.delete(0, END)
nome_pai_entrada.delete(0, END)
resultado_texto.config(text="")
def app():
mae = nome_mae.get()
pai = nome_pai.get()
if not validar_nome(mae):
resultado_texto.config(text="Por favor, insira um nome válido para a mãe.")
return
if not validar_nome(pai):
resultado_texto.config(text="Por favor, insira um nome válido para o pai.")
return
hora_atual = datetime.datetime.now().hour
if 6 <= hora_atual < 12:
cumprimentar = "Bom dia"
elif 12 <= hora_atual < 18:
cumprimentar = "Boa tarde"
else:
cumprimentar = "Boa noite"
mensagem = f"{cumprimentar} Sra. {mae} e Sr. {pai}!"
resultado_texto.config(text=mensagem)
but1 = Button(text="Mostrar", bd=2, bg='#107db2', fg='white',
font=('verdana', 12, 'bold'), command=app)
but1.place(relx=0.1, rely=0.55, 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.55, 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.55, relwidth=0.25, relheight=0.1)
resultado_texto = Label(font=("Arial", 12, "bold"), bg="#cfe2f3")
resultado_texto.place(relx=0.05, rely=0.7, relwidth=0.9, relheight=0.15)
root.mainloop()