Rozdział 18 · Projekt: Aplikacja do rysowania
Wybieramy rozmiar! Bardzo dużo kolorów!
Suwak grubości i wybór kolorów budowane przez pętlę na liście.
Wybierz rozmiar!
Widżet Scale — suwak do wyboru liczby w zakresie,
świetnie nadaje się do grubości linii:
vybor_razmera.py
def vybrat_tolschinu(znachenie):
global tolschina
tolschina = int(znachenie)
tolschina_scale = tk.Scale(toolbar, from_=1, to=10, orient="horizontal", command=vybrat_tolschinu)
tolschina_scale.set(3)
tolschina_scale.pack(side="left")
command w Scale otrzymuje wartość, a nie zdarzenie
W przeciwieństwie do
.bind(), Handler Scale otrzymuje wartość końcowego łańcuch znaków suwaka bezpośrednio — więc vybrat_tolschinu(znachenie) natychmiast zamienia to w liczbę przez int() (Rozdział 4).
Dużo kwiatów!
Paletę kolorów można łatwo zbudować pętlą (rozdział 10) po liście nazw (rozdział 11) — zamiast tworzyć każdy przycisk ręcznie:
vybor_cveta.py
cveta = ["black", "red", "blue", "green", "orange", "purple"]
for cvet in cveta:
tk.Button(toolbar, bg=cvet, width=2, command=lambda c=cvet: vybrat_cvet(c)).pack(side="left")
lambda c=cvet to ta sama subtelność co w rozdziale 17
Bez
c=cvet wszystkie przyciski palety wybierały ostatni kolor z listy to ta sama pułapka z lambdami wewnątrz cyklu, którą już przeanalizowaliśmy w projekcie kółko-krzyżyk.Praktyka: Scale i paleta kolorów
Moduł tkinter otwiera natywne okno Python — wykonaj lokalnie w VS Code, PyCharm lub Jupyter
Praktyka kursuje lokalnie