我在Python(3.5.1)中使用tkinter。问题是实际的RGB值与tkinter中的RGB不对应。
例如,在此代码中:
import tkinter
root=tkinter.Tk()
root.configure(bg="white")
root.mainloop()
它按预期工作。但是,如果我将“white”替换为“#255255255”,则背景为灰色。其他小部件也是如此。
所以我在tkinter网站上阅读了颜色手册文档,根据表格,这个RGB对应于“grey100”。 它为什么不同? 我需要RGB的实际对应关系。我做错了什么,或者我需要外部校准来实现这个目标吗?
答案 0 :(得分:3)
' #rrggbb'中的字符(每像素8位)和#rrrgggbbb' (每像素12位)颜色字符串被解释为十六进制,而不是十进制。 '#FFFFFF'和#fffffffff'是白色的。 0x255是597而0xfff是4095,所以'#255255255'将每个像素调高约15%,结果看起来几乎是黑色。
答案 1 :(得分:2)
字符串"#255255255"
用作"#RRRGGGBBB"
,每个字符串都在十六进制中。纯白色的正确RGB字符串可以是以下任何一种:
#FFF
#FFFFFF
#FFFFFFFF
"white"
Tkinter的颜色始终为十六进制 - 255/255/255略高于1/8全白,因为2
比F
小14。