ColorPicker#
Basic ColorPicker
Inherits: LayoutControl
Properties
-
color(Optional[ColorValue]) –The currently selected color.
-
color_history(Optional[list[ColorValue]]) –A list of colors to display as a history palette.
-
color_picker_width(Optional[Number]) –Width of the color picker in virtual pixels.
-
display_thumb_color(bool) –Whether to display the thumb color in slider.
-
enable_alpha(bool) –Whether to enable alpha (opacity) slider.
-
hex_input_bar(bool) –Whether to show the hex input bar.
-
hsv_color(Optional[HsvColor]) –The currently selected HSV color.
-
label_text_style(Optional[TextStyle]) –Text style for labels.
-
label_types(Optional[list[ColorLabelType]]) –Color label types to display.
-
palette_type(Optional[PaletteType]) –Palette type for the picker area.
-
picker_area_border_radius(Optional[BorderRadiusValue]) –Border radius for the picker area.
-
picker_area_height_percent(Optional[Number]) –Height of the picker area as a percentage of the picker width.
Events
-
on_color_change(Optional[ControlEventHandler[ColorPicker]]) –Called when the picker color is changed.
-
on_history_change(Optional[ControlEventHandler[ColorPicker]]) –Called when the history palette is changed.
-
on_hsv_color_change(Optional[ControlEventHandler[ColorPicker]]) –Called when the picker HSV color is changed.
Example#
import flet as ft
from flet_color_pickers import ColorLabelType, ColorPicker, PaletteType
def main(page: ft.Page):
page.title = "ColorPicker"
page.padding = 20
def on_color_change(e: ft.ControlEvent):
print(f"color: {e.data}")
def on_history_change(e: ft.ControlEvent):
# e.data is a list of hex strings
print(f"history: {e.data}")
def on_hsv_color_change(e: ft.ControlEvent):
print("hsv: ", e.control.hsv_color)
picker = ColorPicker(
color="#ff0000",
# hsv_color=HsvColor(alpha=1, hue=0, saturation=1, value=1),
color_history=[
"#ff0000",
"#00ff00",
"#0000ff",
"#ffff00",
"#00ffff",
"#ff00ff",
],
on_color_change=on_color_change,
palette_type=PaletteType.RGB_WITH_GREEN,
on_history_change=on_history_change,
on_hsv_color_change=on_hsv_color_change,
label_types=[
ColorLabelType.HEX,
ColorLabelType.RGB,
],
picker_area_border_radius=ft.BorderRadius.all(20),
)
page.add(picker)
ft.run(main)
Properties#
color
class-attribute
instance-attribute
#
color: Optional[ColorValue] = None
The currently selected color.
color_history
class-attribute
instance-attribute
#
color_history: Optional[list[ColorValue]] = None
A list of colors to display as a history palette.
To be notified when the palette changes, set on_history_change.
color_picker_width
class-attribute
instance-attribute
#
Width of the color picker in virtual pixels.
display_thumb_color
class-attribute
instance-attribute
#
display_thumb_color: bool = True
Whether to display the thumb color in slider.
enable_alpha
class-attribute
instance-attribute
#
enable_alpha: bool = True
Whether to enable alpha (opacity) slider.
hex_input_bar
class-attribute
instance-attribute
#
hex_input_bar: bool = True
Whether to show the hex input bar.
hsv_color
class-attribute
instance-attribute
#
hsv_color: Optional[HsvColor] = None
The currently selected HSV color.
Provide an HsvColor instance with fields: alpha, hue, saturation,
value.
label_text_style
class-attribute
instance-attribute
#
Text style for labels.
label_types
class-attribute
instance-attribute
#
Color label types to display.
palette_type
class-attribute
instance-attribute
#
palette_type: Optional[PaletteType] = None
Palette type for the picker area.
picker_area_border_radius
class-attribute
instance-attribute
#
picker_area_border_radius: Optional[BorderRadiusValue] = (
None
)
Border radius for the picker area.
picker_area_height_percent
class-attribute
instance-attribute
#
Height of the picker area as a percentage of the picker width.
Events#
on_color_change
class-attribute
instance-attribute
#
on_color_change: Optional[
ControlEventHandler[ColorPicker]
] = None
Called when the picker color is changed.
The data property of the event handler argument contains
the color value as a hex string.
on_history_change
class-attribute
instance-attribute
#
on_history_change: Optional[
ControlEventHandler[ColorPicker]
] = None
Called when the history palette is changed.
The data property of the event handler argument contains
the list of color values as hex strings.
on_hsv_color_change
class-attribute
instance-attribute
#
on_hsv_color_change: Optional[
ControlEventHandler[ColorPicker]
] = None
Called when the picker HSV color is changed.
The data property of the event handler argument contains
the HSV values as a dict with keys: alpha, hue, saturation, value.
