PythonTkinter 练习12之随机数生成颜色值
#Time: 2020/03/13
#Author: Xiaohong
#运行环境: OS: Win7 64位 专业版Pack1
# Python: 3.7
功能:随机数生成颜色值
效果如下:
主文件为(关键点在:):
from tkinter import *
import random
window = Tk()
window.title('place布局')
window['background'] = 'blue'
window.geometry('180x200+30+30')
languages = ['皇家马德里','阿贾克斯','利物浦','尤文图斯','曼彻斯特城']
labels = range(5)
for i in labels:
# 随机产生颜色的三原色
ct = [random.randrange(256) for x in range(3)]
# 取亮度
brightness = int(round(0.299 * ct[0] + 0.587 * ct[1] + 0.114 * ct[2]) )
# 得到背景色的十六进制形式
ct_hex = '%02x%02x%02x' % tuple(ct)
bg_colour = '#' + "".join(ct_hex)
label = Label(window,text=languages[i],fg='White' if brightness < 120 else 'Black',
bg=bg_colour)
label.place(x = 25,y=30 + i * 30,width = 120,height=25)
window.mainloop()