Rozdział 18 · Narzędzia do rysowania
System Kolorów
Sześć szybkich kolorów i colorchooser dla każdego innego — kolor trzeba zobaczyć, a nie tylko czytać kod hex.
Kolor trzeba widzieć, a nie tylko czytać w kodzie
Sześć kolorów palety końcowej aplikacji to nie abstrakcyjne łańcuch znaków, lecz konkretne odcienie:
Black
#111827
#111827
Red
#dc2626
#dc2626
Blue
#2563eb
#2563eb
Green
#16a34a
#16a34a
Pomarańczowy
#f59e0b
#f59e0b
Fioletowy
#7c3aed
#7c3aed
Własny kolor — przez colorchooser
Gotowa paleta — to tylko sześć wariantów. Moduł tkinter.colorchooser
otwiera natywne okno dialogowe systemu do wyboru dowolnego koloru:
custom_color.py
from tkinter import colorchooser
def choose_custom_color(self):
_rgb, hex_color = colorchooser.askcolor(color=self.state.color, title=„Wybierz kolor”)
if hex_color is not None:
self.set_color(hex_color)
Konspekt dialogu (nie prawdziwy zrzut ekranu)
askcolor() może powrócić (None, None)
Jeśli użytkownik kliknie „Anuluj”
askcolor() zwroty (None, None), a nie jakiś domyślny kolor. Kod musi sprawdzić hex_color is not None przed użyciem — w przeciwnym razie następne wywołanie oczekujące łańcuch znaków jak "#7c3aed", otrzyma None i pojawi się błąd.
Praktyka: Paleta i niestandardowy kolor
Moduł tkinter otwiera natywne okno Python — wykonaj lokalnie w VS Code, PyCharm lub Jupyter
Praktyka kursuje lokalnie