from tkinter import *
root = Tk()
root.geometry("500x300")
root.resizable(0, 0)
root.config(bg="#103030")
root.title("Converter do ano civil para ano chinês")
titulo = Label(text="Converter do ano civil para ano chinês",
font=("Arial", "18", "bold"), bg="#103030", fg="#49e3e3")
titulo.place(relx=0.03, rely=0.05)
sub1 = Label(text="Ano Civil:",
font=("Arial", "14", "bold"), bg="#103030", fg="#49e3e3")
sub1.place(relx=0.3, rely=0.25)
ano_civil = StringVar()
ano_civil_entrada = Entry(textvariable=ano_civil,
font=("Arial", "12", "bold"),
bg="white", fg="blue", justify='center')
ano_civil_entrada.place(relx=0.55, rely=0.25, relwidth=0.25)
ano_civil_entrada.focus()
def limpar():
ano_civil_entrada.delete(0, END)
resultado_texto.config(text="")
def converter_ano():
try:
ano = int(ano_civil.get())
ciclo_terrestre = ["Rato", "Boi", "Tigre", "Coelho",
"Dragão", "Serpente", "Cavalo",
"Cabra", "Macaco", "Galo",
"Cão", "Porco"]
ciclo_celestial = ["Madeira", "Fogo", "Terra", "Metal", "Água"]
ano_inicial_chines = 2637
ano_chines = ano_inicial_chines + ano - 1
ramo_terrestre = ciclo_terrestre[(ano_chines - 4) % 12]
ramo_celestial = ciclo_celestial[(ano_chines - 4) % 5]
# Ajuste para garantir que o índice esteja dentro dos limites da lista
mensagem = f"O ano chinês correspondente ao ano civil {ano} é {ramo_terrestre} " \
f"{ramo_celestial} ({ano_chines}) no calendário chinês."
resultado_texto.config(text=mensagem)
except ValueError:
resultado_texto.config(text="Erro de digitação")
but1 = Button(text="Converter", bd=2, bg='#107db2', fg='white',
font=('verdana', 12, 'bold'), command=converter_ano)
but1.place(relx=0.1, rely=0.45, 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.45, 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.45, relwidth=0.25, relheight=0.1)
resultado_texto = Label(font=("Arial", 12, "bold"), bg="#cfe2f3", wraplength=400)
resultado_texto.place(relx=0.05, rely=0.68, relwidth=0.9, relheight=0.3)
root.mainloop()