Python+Tkinter實(shí)現(xiàn)RGB數(shù)值轉(zhuǎn)換為16進(jìn)制碼
這次,我們用Tkinter寫一個(gè)RGB轉(zhuǎn)16進(jìn)制的一個(gè)小工具,先看看效果:
代碼教學(xué)
導(dǎo)入模塊
from tkinter import *
創(chuàng)建窗口
root=Tk() root.title("小工具 - RGB顏色轉(zhuǎn)換16進(jìn)制碼") root.geometry("400x400")
設(shè)置控件,這里用rVar,gVar,bVar來儲(chǔ)存rgb數(shù)值,用Scale制作滑塊
frame=Frame(root) frame.pack(side=LEFT) frame2=Frame(root) frame2.pack(side=LEFT) rVar=IntVar() rVar.set(0) bVar=IntVar() bVar.set(0) gVar=IntVar() gVar.set(0) rL=Label(frame,text="R:") gL=Label(frame,text="G:") bL=Label(frame,text="B:") rL.grid(row=0,column=0) gL.grid(row=1,column=0) bL.grid(row=2,column=0) r=Scale(frame,from_=0,to=255,orient=HORIZONTAL,command=update,variable=rVar) r.grid(row=0,column=1) g=Scale(frame,from_=0,to=255,orient=HORIZONTAL,command=update,variable=gVar) g.grid(row=1,column=1) b=Scale(frame,from_=0,to=255,orient=HORIZONTAL,command=update,variable=bVar) b.grid(row=2,column=1) canvas=Canvas(frame2) canvas.pack(side=TOP,fill=BOTH) color16Var=StringVar() color16Var.set("") _16L=Label(frame2,textvariable=color16Var) _16L.pack(side=TOP,fill=BOTH)
拖動(dòng)滑塊時(shí)更新屏幕
def update(*args): R,G,B=rVar.get(),gVar.get(),bVar.get() r16=str(hex(int(R)))[2:] g16=str(hex(int(G)))[2:] b16=str(hex(int(B)))[2:] if len(r16)==1: r16="0"+r16 if len(g16)==1: g16="0"+g16 if len(b16)==1: b16="0"+b16 color16=f"#{r16}{g16}{b16}" color16Var.set(color16) canvas.config(bg=color16)
最終代碼
from tkinter import * def update(*args): R,G,B=rVar.get(),gVar.get(),bVar.get() r16=str(hex(int(R)))[2:] g16=str(hex(int(G)))[2:] b16=str(hex(int(B)))[2:] if len(r16)==1: r16="0"+r16 if len(g16)==1: g16="0"+g16 if len(b16)==1: b16="0"+b16 color16=f"#{r16}{g16}{b16}" color16Var.set(color16) canvas.config(bg=color16) root=Tk() root.title("小工具 - RGB顏色轉(zhuǎn)換16進(jìn)制碼") root.geometry("400x400") frame=Frame(root) frame.pack(side=LEFT) frame2=Frame(root) frame2.pack(side=LEFT) rVar=IntVar() rVar.set(0) bVar=IntVar() bVar.set(0) gVar=IntVar() gVar.set(0) rL=Label(frame,text="R:") gL=Label(frame,text="G:") bL=Label(frame,text="B:") rL.grid(row=0,column=0) gL.grid(row=1,column=0) bL.grid(row=2,column=0) r=Scale(frame,from_=0,to=255,orient=HORIZONTAL,command=update,variable=rVar) r.grid(row=0,column=1) g=Scale(frame,from_=0,to=255,orient=HORIZONTAL,command=update,variable=gVar) g.grid(row=1,column=1) b=Scale(frame,from_=0,to=255,orient=HORIZONTAL,command=update,variable=bVar) b.grid(row=2,column=1) canvas=Canvas(frame2) canvas.pack(side=TOP,fill=BOTH) color16Var=StringVar() color16Var.set("") _16L=Label(frame2,textvariable=color16Var) _16L.pack(side=TOP,fill=BOTH) root.mainloop()
到此這篇關(guān)于Python+Tkinter實(shí)現(xiàn)RGB數(shù)值轉(zhuǎn)換為16進(jìn)制碼的文章就介紹到這了,更多相關(guān)Python Tkinter RGB數(shù)值轉(zhuǎn)16進(jìn)制碼內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python查找最長(zhǎng)不包含重復(fù)字符的子字符串算法示例
這篇文章主要介紹了Python查找最長(zhǎng)不包含重復(fù)字符的子字符串算法,涉及Python字符串遍歷、統(tǒng)計(jì)相關(guān)操作技巧,需要的朋友可以參考下2019-02-02基于Python編寫一個(gè)簡(jiǎn)單的http服務(wù)器
這篇文章主要為大家詳細(xì)介紹了如何基于Python編寫一個(gè)簡(jiǎn)單的http服務(wù)器,文中的示例代碼簡(jiǎn)潔易懂,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2023-04-04Python+gensim實(shí)現(xiàn)文本相似度分析詳解
這篇文章主要介紹了Python+gensim實(shí)現(xiàn)文本相似度分析詳解,在開發(fā)中我們會(huì)遇到進(jìn)行文本相似度分析的需求,計(jì)算文本相似度,用于鑒別文章是否存在抄襲,需要的朋友可以參考下2023-07-07python實(shí)現(xiàn)無人機(jī)航拍圖片像素坐標(biāo)轉(zhuǎn)世界坐標(biāo)的示例代碼
已知相機(jī)參數(shù)在給定像素坐標(biāo)的前提下,求世界坐標(biāo),大部分通過AI來實(shí)現(xiàn),本文給大家分享實(shí)現(xiàn)腳本,感興趣的朋友跟隨小編一起看看吧2024-06-06python實(shí)現(xiàn)一行輸入多個(gè)整數(shù)并排序輸出
這篇文章主要介紹了python實(shí)現(xiàn)一行輸入多個(gè)整數(shù)并排序輸出方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-02-02Python AutoCAD 系統(tǒng)設(shè)置的實(shí)現(xiàn)方法
這篇文章主要介紹了Python AutoCAD 系統(tǒng)設(shè)置的實(shí)現(xiàn)方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-04-04python數(shù)組排序方法之sort、sorted和argsort詳解
這篇文章主要給大家介紹了關(guān)于python數(shù)組排序方法之sort、sorted和argsort的相關(guān)資料,文中通過實(shí)例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2022-03-03