事件和信号之command

from tkinter import *
import random

root = Tk()
root.title('command')
root.resizable(0,0)

def colorchange():
        #使用随机数计算了 Label 组件的背景色,并根据背景色的灰度值来计算 Label 组件的前景色:
        # 生成3个随机数
        ct = [random.randrange(256) for x in range(3)]
        # 将元组中3个随机数格式化成16进制数,转成颜色格式
        bg_color = "#%02x%02x%02x" % tuple(ct)
        global label
        label['bg'] = bg_color

        # 四舍五入求整计算灰度值公式
        grayness = int(round(0.299 * ct[0] + 0.587 * ct[1] + 0.114 * ct[2]))
        # 如果 grayness 小于 125,则说明背景色较深,前景色使用白色;否则说明背景色较浅,前景色使用黑色。
        label['fg'] = 'black' if grayness > 125 else 'white'

label = Label(root, text='改变Label前景背景颜色',font=('楷体', 20), bg='black',fg='white',width=25)
label.pack()
btn = Button(root, text='单击改变颜色', command=colorchange)
btn.pack()

root.mainloop()

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值