有没有人知道一种方法来获取一个rgb或十六进制代码并在tkinter中显示它?我只是在学习图形用户界面之类的东西。谢谢
这里我有一个简单的图形用户界面,它会告诉你一些基本颜色的RGB和十六进制代码。不知道如何做相反的事情,这就是我想知道的。
import tkinter as tk
from tkinter import *
root = tk.Tk()
def color_entry_function(color, arg=None):
color_entry_get = color_entry.get()
if color_entry_get.lower() == "blue":
blue = Label(root, text="#0000FF\nrgb(0, 0, 255)\n")
blue.pack(anchor="center")
elif color_entry_get.lower() == "red":
red = Label(root, text="#FF0000\nrgb(255,0,0)\n")
red.pack(anchor="center")
elif color_entry_get.lower() == "green":
green = Label(root, text="#0000FF\nrgb(0, 0, 255)\n")
green.pack(anchor="center")
elif color_entry_get.lower() == "yellow":
yellow = Label(root, text="#FFFF00\nrgb(255,255,0)\n")
yellow.pack(anchor="center")
Welcome = Label(root, text="Color to Hex Converter")
Welcome.pack(anchor="center")
Welcome_2 = Label(root, text="Enter the color you want to convert:\n")
Welcome_2.pack(anchor="center")
color_entry = Entry(root, justify="center", width=20)
color_entry.focus()
color_entry.bind("<Return>", color_entry_function)
color_entry.pack(anchor="center")
color_entry_linebreak = Label(root, text="")
color_entry_linebreak.pack()
root.mainloop()
2条答案
按热度按时间axkjgtzd1#
假设是256色RGB
要从十六进制代码字符串转换为rgb元组:
要从rgb元组转换为十六进制码字符串:
要更改tkinter.Label的颜色,请使用bg作为背景色或fg作为文本颜色。必须提供十六进制代码字符串:
添加了这些功能的程序:
yyyllmsg2#
可以使用十六进制代码作为颜色规范:
您可以使用通用小部件方法
winfo_rgb
将颜色规范转换为包含r、g和B分量的元组:注:r、g和B值将在0至65535的范围内(每通道16位)