tkinter模块中有一个名为colorchooser的包选色器,在 colorchooser 模块下提供了用于生成颜色选择对话框的 askcolor()工具函数,,askcolor()函数 属于tkinter模块的colorchooser软件包,调用该函数后, 它将弹出颜色选择器对话框,该函数返回一个tuple,分两种形式给出所选择的颜色的RGB值。
((78.3046875, 168.65625, 177.69140625), ‘#4ea8b1’)
返回的tuple,两个元素应该都可以直接使用。如果tkinter内使用,选择的颜色的十六进制代码(index为1)可以直接使用。
执行askcolor函数,会出现一个Win系统标准的颜色选择窗口:
语法如下:
colorchooser.askcolor()
例子:
```python
from tkinter import *
from tkinter import colorchooser
class Application(Frame):
def __init__(self, master=None):
super().__init__(master)
self.master = master
self.pack()
self.create_widgets()
def colorset(self):
setcolor = colorchooser.askcolor(color="red", title="背景色")
root.config(bg=setcolor[1])
def create_widgets(self):
self.button=Button(self,
text="choose",
command=self.colorset
)
self.button.pack()
root = Tk()
root.title("颜色选择框")
root.geometry("300x300+100+100")
app = Application(master=root)
app.mainloop()
运行结果: