颜色选择对话框
在实例中,将介绍如何使用 tkinter.colorchooser 模块中的 askcolor() 函数显示颜色选择器对话框。
1、颜色选择对话框介绍
要显示原生颜色选择器对话框,请使用 tkinter.colorchooser 模块。
首先,从 tkinter.colorchooser 模块导入 askcolor() 函数:
from tkinter.colorchooser import askcolor
其次,调用 askcolor() 函数来显示颜色选择器对话框:
askcolor(color=None, **options)
如果选择一种颜色,askcolor() 函数会返回一个元组,其中包含表示所选颜色的两个值:
- 第一个值是 RGB 表示。
- 第二个值是十六进制表示。
例如:
((255.99609375, 0.0, 255.99609375), '#ff00ff')
如果没有从颜色选择器对话框中选择任何颜色,则 askcolor() 函数将返回 None
。
2、完整 示例
以下代码演示了如何使用颜色选择器对话框。 根窗口的背景将变为所选颜色。
import tkinter as tk
from tkinter import ttk
from tkinter.colorchooser import askcolor
root = tk.Tk()
root.title('Tkinter Color Chooser')
root.geometry('300x150')
def change_color():
colors = askcolor(title="Tkinter Color Chooser")
root.configure(bg=colors[1])
ttk.Button(
root,
text='Select a Color',
command=change_color).pack(expand=True)
root.mainloop()
运行结果如下:
示例代码是如何运行的呢?
第一步,导入相关模块
import tkinter as tk
from tkinter import ttk
from tkinter.colorchooser import askcolor
第二步,创建根窗口
root = tk.Tk()
root.title('Tkinter Color Chooser')
root.geometry('300x150')
第三步,定义一个在单击“Select a color”按钮时将执行的函数:
def change_color():
colors = askcolor(title="Tkinter Color Chooser")
root.configure(bg=colors[1])
第四步,创建一个按钮并将 change_color() 函数分配给它的命令选项
ttk.Button(
root,
text='Select a Color',
command=change_color).pack(expand=True)
最后,启动窗口
root.mainloop()