Mundo em Python

Cores românticas

from tkinter import *

root = Tk()
root.geometry("400x400")
root.resizable(0, 0)
root.config(bg="#103030")
root.title("Cores românticas") titulo = Label(
text="Cores românticas",
font=("Arial", 28, "bold"),
bg="#103030",
fg="#49e3e3"
)
titulo.place(relx=0.13, rely=0.05) var = StringVar() cores_romanticas = {
"Rosa suave": "#FFC0CB",
"Vermelho clássico": "#FF0000",
"Rosa pastel": "#FFB6C1",
"Rosa antigo": "#F4C2C2",
"Vermelho profundo": "#C71585",
"Pêssego delicado": "#FFDAB9",
"Rosa chiclete": "#FF69B4",
"Bordô romântico": "#800020"
}
def app(selecao):
hex_cor = cores_romanticas.get(selecao, "#FFFFFF") # Ajusta a cor do texto dependendo da luminosidade
r = int(hex_cor[1:3], 16)
g = int(hex_cor[3:5], 16)
b = int(hex_cor[5:7], 16)
luminosidade = (0.299 * r + 0.587 * g + 0.114 * b)
texto_cor = "black" if luminosidade > 128 else "white"

resultado_texto.config(text=hex_cor, bg=hex_cor, fg=texto_cor)
def limpar():
resultado_texto.config(text="", bg="#cfe2f3", fg="black")
root.config(bg="#103030")
def copiar():
root.clipboard_clear()
root.clipboard_append(resultado_texto.cget("text"))
# Dropdown
dropdown = OptionMenu(root, var, *cores_romanticas.keys(), command=app)
var.set("Rosa suave")
dropdown.place(relx=0.1, rely=0.25, relwidth=0.8)
dropdown.config(background='#09A3BA', foreground="#FFFFFF", font=("Arial", 20, "bold"))
dropdown["menu"].config(background='#09A3BA', foreground="#FFFFFF", font=("Arial", 20, "bold")) # Botões
but_copiar = Button(
text="Copiar",
bd=2,
bg='#107db2',
fg='white',
font=('verdana', 12, 'bold'),
command=copiar
)
but_copiar.place(relx=0.1, rely=0.5, 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.5, 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.5, relwidth=0.25, relheight=0.1) # Label do resultado
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()
0