RBG调色,获取对应的色值,基于python

可以实时通过三个滑块来调节RGB数值的0-255数值,并且显示出了来对应的颜色,按下键盘S可以在终端输出RGB对应的色值。

import tkinter as tk  
  
class RGBApp(tk.Tk):  
    def __init__(self):  
        super().__init__()  
        self.title("RGB Slider")  
        self.geometry("300x300")  
  
        # 创建RGB值的标签  
        self.label_r = tk.Label(self, text="R: 0")  
        self.label_r.pack()  
        self.label_g = tk.Label(self, text="G: 0")  
        self.label_g.pack()  
        self.label_b = tk.Label(self, text="B: 0")  
        self.label_b.pack()  
  
        # 创建RGB滑块  
        self.slider_r = tk.Scale(self, from_=0, to=255, orient='horizontal', label='Red', command=self.update_r)  
        self.slider_r.pack()  
        self.slider_g = tk.Scale(self, from_=0, to=255, orient='horizontal', label='Green', command=self.update_g)  
        self.slider_g.pack()  
        self.slider_b = tk.Scale(self, from_=0, to=255, orient='horizontal', label='Blue', command=self.update_b)  
        self.slider_b.pack()  
  
        # 创建颜色显示框  
        self.color_label = tk.Label(self, width=50, height=50, bg='black')  
        self.color_label.pack()  
  
        # 绑定键盘事件  
        self.bind('s', self.print_rgb)  
  
        # 初始化颜色  
        self.update_color()  
  
    def update_r(self, value):  
        self.label_r.config(text=f"R: {value}")  
        self.update_color()  
  
    def update_g(self, value):  
        self.label_g.config(text=f"G: {value}")  
        self.update_color()  
  
    def update_b(self, value):  
        self.label_b.config(text=f"B: {value}")  
        self.update_color()  
  
    def update_color(self):  
        r = int(self.slider_r.get())  
        g = int(self.slider_g.get())  
        b = int(self.slider_b.get())  
        color = f'#{r:02x}{g:02x}{b:02x}'  
        self.color_label.config(bg=color)  
  
    def print_rgb(self, event):  
        r = int(self.slider_r.get())  
        g = int(self.slider_g.get())  
        b = int(self.slider_b.get())  
        print(f"Current RGB values: R={r}, G={g}, B={b}")  
  
if __name__ == "__main__":  
    app = RGBApp()  
    app.mainloop()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值